Preheat your oven to 375°F (190°C). Grease a 9×13-inch baking dish with olive oil and set it aside.
In a large mixing bowl, combine the ground meat, breadcrumbs, parmesan cheese, garlic powder, oregano, basil, salt, pepper, egg, and parsley. Mix everything together until well combined.
Roll the meat mixture into small meatballs, about 1 inch in diameter.
Heat olive oil in a large skillet over medium heat. Add the meatballs in batches, browning them on all sides, about 5 minutes per batch. Transfer the meatballs to a plate and set aside.
In the same skillet, pour in the marinara sauce and heat it gently. Stir in the red pepper flakes if using. Add the browned meatballs to the sauce and let them simmer for about 10 minutes.
Cut the hoagie rolls into bite-sized pieces. Layer the pieces in the prepared baking dish.
Spoon the meatballs and marinara sauce over the hoagie rolls. Spread the mixture evenly across the dish. Top with the shredded mozzarella cheese and provolone cheese (if using).
Place the casserole in the preheated oven and bake for 25-30 minutes, or until the cheese is melted and bubbly.
Remove from the oven and let it cool for 5-10 minutes. Garnish with fresh basil or parsley before serving. Cut the casserole into squares and serve warm.