To a large pot, add crumbled Italian sausage, Italian seasoning, plenty of fresh thyme (leaves only, not sprigs), and red pepper flakes. Cook over medium heat, tossing often to break up the sausage.
Add the minced garlic and 1 cup of uncooked orzo after the sausage has released its juices and is halfway cooked. Cook, stirring frequently, over medium heat for about 2 minutes to brown the orzo.
When the orzo and butternut squash are done, add 5 cups of chicken stock and diced butternut squash. Stir everything thoroughly, cover the pot, bring it to a boil, lower the heat to a visible simmer, and cook for 5 to 10 minutes.
When the spinach is added to the soup, cover it with a lid and allow it wilt over low heat, stirring from time to time.
Take the soup off the stove and stir in the heavy cream when the spinach has wilted. Add salt and pepper to taste and mix everything together. If soup is too thick, add extra chicken stock or water. If desired, add additional red pepper flakes. Add fresh thyme and Parmesan cheese (shaved, shredded, or grated) on top.