01 - Heat olive oil in a large soup pot or Dutch oven over medium heat. Add the sausage with casings removed and cook, breaking it apart with a spoon, for 5-6 minutes until evenly browned. Transfer the sausage to a plate and set aside, leaving any drippings in the pot.
02 - Add the diced onion, carrots, and celery to the pot. Sauté for 4-5 minutes until the vegetables are softened. Add the minced garlic and cook for 1 minute until fragrant.
03 - Stir in the cubed butternut squash. Sprinkle with dried thyme, dried rosemary, salt, black pepper, and crushed red pepper flakes if using. Cook together for 2 minutes, stirring to coat the squash evenly.
04 - Pour in the chicken broth and bring to a boil. Reduce the heat to a simmer, cover the pot, and cook for 15-20 minutes until the squash is fork-tender.
05 - Use an immersion blender to partially puree the soup directly in the pot, leaving about half of the vegetables chunky for texture. Alternatively, transfer half the soup to a blender, puree until smooth, and return it to the pot.
06 - Return the browned sausage to the pot and bring the soup back to a gentle simmer. Add the cheese tortellini and cook according to package instructions, usually 5-7 minutes, until the tortellini are tender and float to the surface.
07 - While the soup simmers, combine the heavy cream, Parmesan cheese, ricotta cheese, chopped fresh sage, and a pinch of salt and pepper in a small saucepan over low heat. Stir gently for 2-3 minutes until the cheeses are melted and the mixture is smooth and fragrant.
08 - Ladle the hot soup into bowls. Drizzle 1-2 tablespoons of the sage cheese swirl over each serving. Top with fried sage leaves and freshly ground black pepper if desired. Serve immediately.