Preheat broiler and set oven rack in upper position. Line a rimmed baking sheet with aluminum foil and reserve.
In a medium bowl, combine the bread and the milk. Reserve until bread is very soggy.
In a large bowl, combine the onion, garlic, parmigiano reggiano, ½ cup chopped parsley, eggs, red pepper flakes, salt, and pepper. Then, add the meat and the soggy bread, and using your fingers, mix them thoroughly until combined. Be careful not to overwork the meat!
Form the meat mixture into 8 large patties. Make a small indentation in the center of 4 of them, leaving at least 1/2 inch space around the edges. Then, divide 1 cup of shredded mozzarella among each of these 4 patties and top them with the remaining patties, using your fingers to seal the edges and form them into 4 large meatballs.
In a large bowl, combine breadcrumbs, remaining chopped parsley, salt, and pepper. Carefully roll each polpettone on the breadcrumbs mixture.
Arrange polpettone on prepared baking sheet and broil them until browned on top, about 7 to 10 minutes. Remove from oven and reduce ovens temperature to 400F.
In a large cast iron or ovenproof dish, add 3 cups marinara sauce and arrange polpettone on top. Top each polpettone with remaining mozzarella cheese and a few tablespoons of marinara sauce. Bake in the oven until the cheese is melted and polpettone are cooked through (145F), about 15 minutes.
Sprinkle with fresh basil and serve immediately with spaghetti, rice, mashed potatoes, or simply with some crusty bread!