Brown the ground beef in a large pot or Dutch oven over medium heat. Drain off any excess grease.
Add the chopped onion to the pot and cook until softened, about 4 minutes.
Stir in the minced garlic, Italian seasoning, salt, and pepper. Cook for 1 minute until fragrant.
Pour in the beef broth and add the undrained diced tomatoes. Bring the mixture to a boil.
Add the shell pasta to the boiling liquid. Reduce heat to medium-low, cover the pot, and simmer for 12 to 15 minutes, stirring occasionally to prevent sticking, until the pasta is tender.
Remove the pot from the heat. Stir in the heavy cream and cubed cream cheese until the cheese melts and the sauce becomes smooth and creamy.
Stir in the shredded cheddar cheese until fully melted.
Serve immediately, garnished with fresh parsley.
Notes
If the sauce is too thick after adding the cheese, add a splash of milk or extra broth until you reach your desired consistency.
You can substitute heavy cream with half-and-half for a slightly lighter sauce.