01 - Preheat the oven to 400°F. Position the oven rack so the subs will sit 4–6 inches below the broiler element.
02 - In a large mixing bowl, combine the ground beef, breadcrumbs, Parmesan cheese, egg, minced garlic, parsley, oregano, salt, and pepper. Mix gently until just evenly incorporated, being careful not to overwork the meat. Shape the mixture into 12 uniform meatballs, roughly 1 1/2 inches in diameter.
03 - Heat the olive oil in a large skillet over medium heat. Working in batches if necessary, add the meatballs and brown on all sides, approximately 5–7 minutes. Transfer the browned meatballs to a plate and set aside. Do not discard the drippings in the pan.
04 - In the same skillet with the residual drippings, add the chopped onion and cook over medium heat until softened and translucent, about 3 minutes. Add the minced garlic and stir for 1 additional minute until fragrant. Pour in the marinara sauce and dried basil, stirring to combine and scraping up any browned bits from the bottom of the pan.
05 - Return the browned meatballs to the skillet, nestling them into the sauce. Bring to a gentle simmer, then reduce the heat to low. Cover the skillet and let the meatballs cook through in the sauce for 15 minutes.
06 - Slice each sub roll open lengthwise without cutting all the way through. Optionally brush the cut surfaces with softened butter. Place the rolls cut-side up on a baking sheet and toast under the broiler for 1–2 minutes until lightly golden. Watch carefully to prevent burning.
07 - Place 3 meatballs into each toasted sub roll, spooning a generous amount of sauce over the top. Evenly distribute the shredded mozzarella cheese over the meatballs and sauce on each sub.
08 - Return the assembled subs on the baking sheet to the broiler. Cook for 2–3 minutes until the mozzarella is fully melted, bubbly, and beginning to develop golden-brown spots in areas.
09 - Remove the subs from the oven and garnish with fresh basil leaves if desired. Serve immediately while hot.