Preheat your oven to 375°F.
Cut the zucchinis in half lengthwise and scoop out the center with a spoon to create boats. Set the scooped-out flesh aside.
In a large skillet, heat the olive oil over medium heat. Add the chopped onion and garlic, sautéing until the onion is translucent, about 3-4 minutes.
Add the ground beef to the skillet, breaking it apart with a spatula. Cook until browned and fully cooked, about 5-7 minutes. Drain any excess fat.
Stir in the diced tomatoes, reserved zucchini flesh, Italian seasoning, salt, and black pepper. Cook for an additional 2-3 minutes, allowing the flavors to meld.
Spoon the beef mixture into the zucchini boats, packing it in well. Place the stuffed zucchinis on a baking sheet.
Top each zucchini boat with shredded mozzarella cheese.
Bake in the preheated oven for 15-20 minutes, or until the zucchinis are tender and the cheese is melted and bubbly.
Remove from the oven and let cool for a few minutes. Garnish with fresh basil if desired before serving.