Mix the meatballs: Heat the oven to 400°F and line a sheet pan with parchment. Combine the ground beef, ground pork, panko, parmesan, egg, parsley, 2 cloves minced garlic, Italian seasoning, 1/2 teaspoon salt, and 1/4 teaspoon pepper in a bowl. Mix with your hands just until it comes together, no more.
Roll them small: Scoop level tablespoons and roll them into 1 1/4-inch balls, about 40 total. Damp hands keep the mixture from sticking. Arrange them on the sheet pan with a little space between.
Bake the meatballs: Bake for 12 minutes, until browned on the outside and cooked through to an internal temperature of 160°F. Set them aside.
Start the soup: While the meatballs bake, heat the olive oil in a large pot or Dutch oven over medium heat. Add the carrots, onion, and celery and cook for 7-8 minutes, until the onion is soft and the carrots have lost their raw crunch. Stir in the 4 cloves minced garlic and cook 1 minute more.
Bring the broth to a boil: Pour in the chicken broth, add 1 teaspoon salt and 1/2 teaspoon pepper, and bring it to a rolling boil over medium-high heat.
Cook the pasta: Stir in the acini di pepe and cook at a steady simmer for 8-9 minutes, or per the box, until the pasta is tender. Stir occasionally so it doesn't settle and stick to the bottom.
Add the meatballs and spinach: Slide the meatballs in and simmer 3 minutes to heat them through. Stir in the spinach and cook 1-2 minutes more, just until it wilts into the broth.
Serve: Taste and adjust the salt, then ladle into bowls and finish each one with grated parmesan.
Notes
Roll the meatballs about 1 1/4 inches, a level tablespoon each, so one lands on every spoon, and bake them before they go in the pot so the broth stays clear. The meatballs are ground beef and ground pork, so cook them to an internal temperature of 160°F. If you plan to have leftovers, cook the acini di pepe separately and add it to each bowl, because pasta left in the broth swells and drinks the pot.