Heat olive oil in a large pot over medium heat. Add crumbled sausage and cook until browned, about 5-7 minutes. Remove and set aside.
In the same pot, cook the diced onion and minced garlic until soft and translucent, about 2-3 minutes.
Pour in the chicken broth and diced tomatoes, then bring to a simmer.
Stir in the cooked sausage, Italian seasoning, crushed red pepper flakes, salt, and pepper. Let it simmer for about 10 minutes to blend the flavors.
Add the chopped spinach and cook for an additional 2-3 minutes until wilted.
Lower the heat to low. Gradually stir in the heavy cream and grated Parmesan cheese, cooking for 2-3 minutes until the soup becomes creamy and smooth.
Serve hot with extra Parmesan cheese on top, if desired.
