Add the bread to a bowl and cover with cold water. Let it soak for five minutes. At the end of the five mintues, drain as much water from the bread as possible, squeezing the water out with your hands before transfering the wet bread to a large clean bowl. Break up the bread into small pieces.
Add the ground beef, ground pork, bread crumbs, egg, onion, garlic, salt, pepper, nutmeg, and allspice to the wet bread mixture. Mix together and using a 1 1/2 tablespoon cookie scoop form meatballs.
Melt 3 tablespoons butter in a skillet over meadium heat. Brown the meatballs in batches, cooking until they are browned on the outside and cooked through, about 7 to 10 minutes flipping once in betwee. Use a slotted spoon to remove them and transfer to a paper towel lined plate.
Working with a clean frying pan, melt 3 tablespoons of butter. Whisk in 3 tablespoons of flour to make a roux. Cook until the roux is a light brown color. Slowly whisk in the beef, starting with a few tablespoons at a time, adding more as it is absorbed, and then gradully adding it faster. Bring it to a simmer and cook for 5 minutes.
Taste the gravy and add salt and pepper if needed. Stir in the sour cream if you are using it. Return the meatballs to the gravy to heat through.