Heat olive oil in a large pot. Saute onions and garlic until onions become translucent, about 5 minutes.
Add remaining ingredients for the soup. Allow to simmer for 20-25 minutes.
While soup is simmering, mix all ingredients for the meatballs in a medium-sized bowl. Using your hands, combine all of the ingredients together.
Line a baking sheet with foil and spray with non-stick spray. Form meat into 1 1/2" balls, about the size of a golf ball, and place on the baking sheet. Bake for 20-25 minutes, or until the internal temperature reaches 165 F.
When the soup has finished simmering, remove the bay leaf and pour the soup into a blender. Mix until smooth. Return blended soup back to the pot.
When meatballs are fully cooked, transfer them to the pot with the blended soup. Combine together and allow to simmer for 10 more minutes before serving.
Garnish with fresh, chopped parsley and shredded parmesan cheese.