In a large mixing bowl, combine the ground beef, ground pork, breadcrumbs, milk, half of the finely chopped onion, minced garlic, ground nutmeg, ground allspice, and a generous pinch of salt and pepper. Use your hands to mix the ingredients until just combined; be careful not to overwork the mixture to keep the meatballs tender.
With your hands, shape the mixture into small meatballs, approximately 1 inch in diameter. Place the formed meatballs on a plate and set them aside to rest.
In a large pot or Dutch oven, heat a splash of oil over medium heat. Once the oil is shimmering, add the remaining chopped onion and sauté for 2-3 minutes until it becomes translucent and fragrant.
Gently add the meatballs to the pot in a single layer, browning them evenly on all sides for about 5-7 minutes. If necessary, cook the meatballs in batches to avoid overcrowding and ensure even cooking.
Once the meatballs have developed a nice golden-brown crust, carefully pour in the beef broth. Bring the mixture to a gentle boil.
Add the chopped carrots and diced potatoes to the pot. Lower the heat and allow the soup to simmer for 15-20 minutes, or until the vegetables are tender and infused with flavor.
Stir in the fresh spinach leaves and heavy cream, allowing the soup to simmer for an additional 5 minutes. This will create a creamy texture and balance the flavors beautifully.
Taste the soup and adjust the seasoning with more salt and freshly cracked black pepper as desired before serving.