Brown the Italian sausage in a large pot or Dutch oven over medium heat. Break the sausage into small pieces as it cooks. Drain off excess grease.
Add the chopped onion to the pot and cook until softened, about 5 minutes.
Stir in the minced garlic and cook for 1 minute until fragrant.
Pour in the chicken broth and add the diced tomatoes (with their juice), Italian seasoning, basil, and red pepper flakes, if using. Bring the mixture to a simmer.
Reduce the heat to low, stir in the heavy cream, and let the soup warm through for 5 minutes. Do not boil after adding the cream.
Add the refrigerated tortellini to the soup. Cook according to package directions, usually 3 to 5 minutes, until the tortellini float and are cooked through.
Stir in the fresh spinach until it wilts.
Remove the pot from the heat. Stir in the grated Parmesan cheese until melted and smooth.
Taste the soup and add salt and pepper as needed before serving.
Notes
For a thicker soup, mix 1 tablespoon of cornstarch with 2 tablespoons of cold water, then stir this slurry into the simmering broth before adding the cream.
You can substitute ground turkey or ground beef for the Italian sausage.
If you prefer a tomato-free version, omit the diced tomatoes and increase the broth by 1 cup.