Preheat your oven to 375°F (190°C). Lightly grease a 9x13-inch baking dish.
Prepare the peppers. Cut off the tops and remove seeds and membranes. Place the peppers upright in the baking dish. If they don’t sit flat, trim a thin slice off the bottom so they stand evenly.
Cook the filling. In a large skillet over medium heat, add olive oil. Sauté the onions until translucent, about 3 minutes, then add garlic and cook for 30 seconds until fragrant.
Add the meat. Stir in the ground beef, breaking it up with a spoon, and cook until browned. Drain any excess grease.
Add rice and seasonings. Stir in cooked rice, diced tomatoes, half of the tomato sauce, Italian seasoning, salt, and pepper. Simmer for 5 minutes, stirring occasionally, until the mixture thickens slightly.
Add the cheese. Remove from heat and stir in mozzarella and Parmesan cheese. The filling should be moist and cheesy but not soupy.
Stuff the peppers. Spoon the filling evenly into each pepper, pressing down lightly to pack them. Pour the remaining tomato sauce over the tops.
Bake. Cover with foil and bake for 30 minutes. Remove foil, sprinkle with extra mozzarella, and bake uncovered for another 10–15 minutes, until the cheese is melted and the peppers are tender.
Garnish and serve. Let the peppers rest for 5 minutes before serving. Sprinkle with fresh parsley if desired.