In a sizable saucepan, brown the sausage with the diced onion until the meat is fully cooked, making sure to crumble the sausage as it cooks. Ensure any excess grease is drained.
Introduce the chopped garlic, ground fennel, and red pepper flakes to the pan. Sauté for about a minute until fragrant.
Add the chicken broth, diced tomatoes, pasta, and Italian seasoning to the pot. Bring to a boil, then reduce the heat and let it simmer until the pasta is al dente, around 6 to 8 minutes.
Incorporate the grated parmesan, warmed cream cheese, and heavy cream. Let the mixture simmer for another 3 to 5 minutes until the cheeses are completely melted into the soup.
Season with salt and pepper to your liking, add the chopped parsley if desired, and serve the soup hot!