Heat 1 tablespoon each of oil and butter in a large pot or Dutch oven over medium heat. Once the butter is melted, add the onions, carrots, and celery, and cook for 5-6 minutes, stirring regularly, until the onions are translucent.
Add the garlic and cook for 1-2 minutes until fragrant.
Transfer the vegetables to a bowl and set aside. Return the pot to the heat and add the remaining 1 tablespoon of olive oil.
Add the sausage and red pepper flakes and cook for and crumble the sausage for 5-6 minutes until it is cooked through.
Increase the heat to medium-high. Add the white wine and bring to a simmer. Cook for 2-3 minutes, scraping up the browned bits from the bottom of the pan, or until reduced by half.
Return the cooked vegetables to the pot. Add the chicken broth, and potato gnocchi. Increase the heat to high and bring the soup to low boil. Once the gnocchi floats to the surface, cook for 2 minutes or until the gnocchi is tender. Reduce the heat to medium.
Whisk the half-and-half and flour in a small mixing bowl or cup until smooth. Add the flour mixture, salt, pepper, cubed cream cheese, baby spinach, and grated parmesan cheese to the pot. Stir well and cook for 4-5 minutes until the soup has thickened and the cream cheese has melted.
Season the soup to taste with salt and pepper, and serve hot, garnished with additional parmesan cheese and chopped flat-leaf parsley.