In a large skillet over medium heat, brown the ground beef with the diced onion and minced garlic until the meat is fully cooked. Drain any excess fat.
Transfer the cooked beef mixture to the crockpot. Add the crushed tomatoes, tomato sauce, tomato paste, Italian seasoning, sugar, salt, and pepper. Stir to combine.
Add the cream cheese to the crockpot and mix until well incorporated.
In a separate bowl, combine the uncooked penne pasta and water. Pour this mixture into the crockpot and stir gently to combine all ingredients.
Cover and cook on low for 4-5 hours or on high for 2-3 hours, until the pasta is tender.
About 15 minutes before serving, sprinkle the shredded mozzarella cheese on top of the pasta. Cover and let it melt.
Serve hot, garnished with fresh basil if desired.