Preheat the oven to 425°F (220°C) and line a baking sheet with parchment.
Stir the panko and milk together in a large bowl for a few minutes until soft. Add the beef, pork, egg, Parmesan, garlic, parsley, Italian seasoning, salt, and pepper. Mix gently until just combined.
Shape about 30 meatballs, each roughly the size of a walnut (a bit over 1 inch), and set them on the baking sheet.
Bake the meatballs for 8 to 10 minutes, until browned on the outside. They finish cooking inside the shells. Lower the oven to 375°F (190°C).
Boil about 36 shells in salted water, in batches, for 1 to 2 minutes less than the package time. Drain gently, rinse with cool water, and lay them in a single layer.
Stir together the ricotta, Parmesan, ½ cup mozzarella, egg, parsley, salt, pepper, and the spinach if using. Taste and adjust.
Spread 1 cup of sauce over the bottom of a 9x13-inch dish. Spoon about 1 tablespoon of filling into each shell, press a meatball into it, and set the shells open side up in the dish, snug against each other.
Spoon the remaining sauce over and around the shells. Cover tightly with foil.
Bake covered for 25 minutes. Uncover, scatter the 2 cups of mozzarella and ¼ cup of Parmesan over the top, and bake 10 to 15 minutes more, until bubbling with golden spots.
Check that the center of one meatball reaches 160°F (71°C). Rest for 5 minutes, then top with basil and serve.