Coat the bottom of a large pot with olive oil and place it over medium heat. When the oil is hot, add the onion, carrots and fennel. Sweat the vegetables until they begin to soften a bit, about 10 minutes.
Add the wine, thyme, and oregano. Raise the heat and bring the wine to a simmer. Lower the heat and let the wine simmer until it has reduced by about half, which should take about 4 minutes.
Stir in the broth, then raise heat to high. Bring the broth to a boil, then lower the heat and allow it to simmer, uncovered, for 10 minutes.
Stir in the orzo. Continue to simmer the soup until the orzo is al dente, about 10 minutes.
Stir in the spinach and let the soup continue simmering until the spinach has wilted and the pasta is tender, about 2 minutes.
Remove the pot from heat and season the soup with salt and pepper to taste.
Ladle the soup into bowls, then add a few meatballs to each bowl. Serve with a sprinkle of Parmesan cheese.