In a large skillet, heat olive oil (2 tablespoons) over medium heat. Add onions (1 1/2 cups) and garlic (4 cloves) then saute until onions are translucent 7-10 minutes. Stir in Italian seasoning (3 teaspoons) and cook until fragrant, about 1 minute. Set aside and cool.
In a large bowl, add milk (3/4 cup) and bread (4 slices) and let sit for 10 minutes. Mash with a fork then stir the cooled onion mixture and combine. Add remaining ingredients and knead to combine.
Form mixture into 2 1/2 inch meatballs (you should have approximately 16 meatballs), place on a rimmed baking sheet lined with parchment paper and bake for about 20 minutes.
While meatballs are baking make the sauce. In a large pot, heat olive oil (2 tablespoons) over medium heat. Add onions (1 cup), garlic (1 tablespoon), and carrot (1/4 cup) and saute until onions are translucent for 7-10 minutes.
Stir in the remaining sauce ingredients and bring to a boil. Immediately reduce heat and simmer, stirring occasionally for 40-60 minutes, or until they reach an internal temp of 155–160°F. Add the oven-browned meatballs to the sauce and nestle them in. Spoon a little sauce over the tops instead of stirring — stirring too soon can cause tender meatballs to break apart before they set. Continue to simmer for 30 minutes.
Serve meatballs and sauce over cooked pasta (16 ounces), passing the extra sauce.