Sauté the aromatics: Heat the olive oil and butter in a large pot over medium heat.
Add the onion, carrots, and celery. Cook, stirring often, until softened, about 6–8 minutes. Add the garlic, Italian seasoning, and red pepper flakes, and cook 1 minute until fragrant.
Build the base: Sprinkle the flour over the vegetables and stir to coat.
Cook 1–2 minutes to remove the raw flour taste. The mixture will look a bit pasty—this is your thickening base.
Add broth gradually: Slowly whisk in the chicken broth, scraping up any browned bits from the bottom. Bring to a gentle simmer.
The soup will start to thicken slightly as it heats.
Add chicken: Stir in the cooked chicken. Simmer 5–7 minutes to let the flavors come together.
Cook the tortellini: Add the tortellini and simmer according to package directions, usually 3–5 minutes, until just tender. Avoid overcooking so they stay plump.
Finish with cream and greens: Lower the heat.
Stir in the heavy cream, spinach, and Parmesan. Simmer gently for 2–3 minutes, just until the spinach wilts and the soup is creamy. Do not boil after adding cream.
Season and serve: Taste and season with salt and black pepper.
Ladle into bowls, top with extra Parmesan and parsley if you like, and serve warm.