01 -
Preheat oven to 400°F. In a large bowl, mix ground beef, breadcrumbs, Parmesan, parsley, egg, garlic, onion powder, salt, and pepper gently just until combined to avoid toughness.
02 -
Use a cookie scoop or tablespoon to portion meat mixture into 1.5-inch meatballs. Roll each between palms to form uniform spheres.
03 -
Place meatballs on a parchment-lined baking sheet spaced apart and bake for 20 minutes until browned and internal temperature reaches 165°F.
04 -
Heat olive oil and butter in a large skillet over medium heat. Add sliced onions and cook slowly for 15-20 minutes, stirring occasionally, until deeply golden brown.
05 -
Deglaze skillet with balsamic vinegar, scraping up browned bits. Add beef broth and thyme, then simmer for 5 minutes to develop a rich sauce.
06 -
Reduce oven temperature to 350°F. Transfer baked meatballs to a baking dish with tall sides, pour sauce over them, then top evenly with shredded Gruyère cheese. Bake 10-15 minutes until cheese melts and bubbles.
07 -
Remove from oven, sprinkle fresh parsley over the top, and serve warm.