For the meatballs: In a large bowl, combine the ground beef, parmesan, chopped parsley, egg, garlic, salt, pepper, oregano, and lemon juice. Shape the mixture into small balls (about 1-inch wide) and chill for 30 minutes. (You should have about 24 meatballs.)
After chilling, heat the olive oil over medium-low heat in a heavy pot. Briefly brown meatballs on all sides, then remove to a plate.
For the soup: To the pot, add the beef stock, 2 cups water, salt, and tomato paste. Bring to a boil, then reduce the heat to simmer for about 30 minutes.
Meanwhile, gather the parsley leaves, bay leaves, and peppercorns in a cheesecloth bundle. Tie to secure. Add this to the pot.
Add the onion, carrots, celery, and potatoes to the pot. Simmer 15 minutes more. Remove the herb bundle.
Add the cabbage and meatballs to the pot. Bring to a boil, then reduce the heat to simmer for 8 to 10 minutes.
Serve with plenty of freshly grated parmesan sprinkled over the top.
