In a large Dutch oven or heavy-bottomed pot, melt the butter over medium heat. Add the diced onion, carrots, and celery, sautéing for 6 to 8 minutes until the vegetables are softened and the onion is translucent.
Add the minced garlic to the pot and cook for 60 seconds until fragrant, being careful not to burn it.
Sprinkle the all-purpose flour over the sautéed vegetables. Stir constantly for 2 minutes to form a roux, which will serve as the thickening base for the soup.
Slowly whisk in the chicken broth, pouring a little at a time to ensure the flour incorporates smoothly without lumps. Stir in the Italian seasoning, smoked paprika, sea salt, and black pepper.
Bring the soup to a gentle boil, then reduce the heat to medium-low. Let the broth simmer for 10 minutes to allow the flavors to meld and the liquid to thicken slightly.
Add the refrigerated cheese tortellini and the shredded chicken to the pot. Increase the heat slightly to maintain a simmer and cook for 3 to 5 minutes, or until the tortellini is tender and floats to the top.
Stir in the heavy cream and the fresh baby spinach. Continue to cook for another 1 to 2 minutes until the spinach is wilted and the soup is rich and creamy.
Ladle the soup into bowls and garnish with freshly grated Parmesan cheese and chopped parsley. Serve immediately while hot.