Sauté the aromatics: In a large pot or Dutch oven, heat the butter and olive oil over medium heat. Add the onion, carrots, and celery.
Cook, stirring occasionally, until the vegetables soften and the onion is translucent, about 6–8 minutes.
Add garlic and spices: Stir in the garlic, Italian seasoning, and red pepper flakes. Cook for 30–60 seconds, just until fragrant.
Simmer the base: Pour in the chicken broth and season with a pinch of salt and pepper. Bring to a gentle boil, then reduce to a simmer for 8–10 minutes, until the carrots are just tender.
Add chicken and tortellini: Stir in the shredded chicken.
Bring the soup back to a gentle simmer, then add the tortellini. Cook according to package directions, usually 3–5 minutes, until the tortellini are tender and floating.
Make it creamy: Reduce the heat to low. Stir in the heavy cream, Parmesan, and spinach.
Warm through for 2–3 minutes, stirring gently, until the spinach wilts and the soup is creamy. Do not boil.
Finish and adjust: Stir in the lemon juice. Taste and adjust salt and pepper.
If the soup is thicker than you like, add a splash of broth or water to loosen.
Serve: Ladle into bowls and top with extra Parmesan and fresh herbs, if using. Serve with crusty bread.