1. Heat 1 tablespoon oil in a heavy medium pot over medium heat. Stir in half the garlic and cook, stirring until golden, about 2 minutes. Add the tomatoes with juice and 1/4 teaspoon pepper. Simmer the sauce, uncovered, breaking up tomatoes with a wooden spoon, until slightly thickened, about 8 minutes. Season the sauce with salt to taste.
2. Cook the onion with the remaining garlic in 2 tablespoons oil in a large heavy skillet over medium-high heat, stirring occasionally, until browned, about 6 minutes. Transfer to a large bowl and cool. (Reserve and wipe out the skillet.)
3. Soak bread in milk until soft, about 5 minutes. Squeeze the bread to remove excess milk, and discard the milk.
4. Beat the eggs with the cooled onions
. Mix in the soaked bread, Parmigiano-Reggiano
, parsley, 3/4 teaspoon kosher salt, and 1/2 teaspoon pepper and mix until evenly combined. Then gently stir in pork to combine. Form into 12 meatballs, each about 2 inches in diameter, and arrange on a plastic-lined baking sheet.
5. Heat the remaining 2 tablespoons oil in a large heavy skillet over medium-high heat, then brown the meatballs turning once, about 6 minutes total. Add the tomato sauce
to the skillet and simmer
, covered, until meatballs are just cooked through, 6 to 8 minutes more. Set a meatball on the bottom of a roll, top with sauce, a slice of mozzarella and a basil leaf. Top with the other half of the roll. Repeat with remaining ingredients. Serve.