Preheat oven to 400°F. Spray a 9x13-inch baking dish with cooking spray. Set aside.
Bring a large pot of water to a boil. Cook the pasta al dente, according to the package directions. Reserve 1 cup of pasta water. Then, drain the pasta and set it aside.
In a large saucepan, melt the butter over medium heat. Add the minced garlic and cook for 1 minute.
Sprinkle the flour over the melted butter and garlic. Whisk constantly for 1-2 minutes, or until slightly golden brown.
Slowly pour in the milk and heavy cream, whisking constantly to combine. Bring the mixture to a gentle simmer. Then, reduce heat to medium-low.
Add the garlic powder, salt, ground mustard, pepper, and cream cheese. Whisk until the cream cheese is completely melted.
Add 1 cup of mozzarella cheese and 1 cup of Parmesan cheese, stirring constantly until the cheese is melted. If the sauce feels too thick, stir in a small amount of reserved pasta water until it reaches your desired consistency.
Add the cooked pasta to the cheese sauce and stir until evenly coated. Transfer the mixture to the prepared baking dish.
To a small bowl, add the remaining mozzarella cheese, parmesan, breadcrumbs, and paprika. Mix to combine.
Sprinkle the breadcrumb mixture over the top of the cheesy pasta, spreading it out in an even layer.
Bake for 15-20 minutes or until the cheese and topping are bubbling and lightly golden. For an extra-crispy crust, broil on high for 2-3 minutes at the end, keeping a close eye to avoid burning.
Garnish with parsley. Serve.