Cook the penne pasta according to package instructions until al dente. Drain and set aside, reserving 1/2 cup of pasta water.
In a large skillet, heat the olive oil over medium heat. Add the Italian sausage and cook until browned, breaking it apart with a spoon, about 5-7 minutes.
Stir in the minced garlic and red pepper flakes (if using) and cook for an additional 1-2 minutes until fragrant.
Add the cherry tomatoes to the skillet and cook for 3-4 minutes until they start to soften.
Pour in the heavy cream and stir to combine. Bring the mixture to a gentle simmer.
Add the chopped spinach and Parmesan cheese, stirring until the spinach wilts and the cheese melts. If the sauce is too thick, add reserved pasta water a little at a time until desired consistency is reached.
Season with salt and pepper to taste.
Toss the cooked penne pasta into the sauce, mixing well to coat.
Serve immediately, garnished with fresh basil if desired.