Preheat the oven to 375°F (190°C).
Use a spoon to scoop out the center of each zucchini half, leaving a 1/4-inch shell. Chop the scooped zucchini flesh and set aside.
Heat olive oil in a large skillet over medium heat. Add onions and cook until softened.
Add ground beef and cook until browned. Drain excess grease if necessary.
Stir in garlic and chopped zucchini flesh. Cook for 2–3 minutes until softened.
Add marinara sauce, Italian seasoning, salt, and pepper. Simmer for 5 minutes.
Place zucchini boats in a baking dish. Spoon the beef mixture evenly into each one.
Sprinkle mozzarella and Parmesan cheese on top.
Cover with foil and bake for 25 minutes. Remove foil and bake for an additional 5–10 minutes, or until cheese is bubbly and zucchini is tender.
Garnish with fresh parsley if desired and serve warm.