Preheat your oven to 350F. Spray a 2-quart casserole or 9"x13" baking dish with non-stick spray.
Bring a large pot of water to a boil. Place the cauliflower florets in the boiling water to blanch for 2-3 minutes. Remove from the water and reserve.
In a large skillet on medium heat, melt your butter. Place the prepared garlic and onion in the pan and slowly cook them in the butter for 2-3 minutes. Sprinkle the flour over the butter mixture and whisk it in, so that it gets absorbed by the butter. Let it cook for 1-2 minutes.
While whisking, slowly pour in the milk into the skillet. Keep whisking until the sauce is smooth and starts to simmer. At this point, your bechamel sauce base is ready.
Add to the sauce, the smoked paprika, Italian herbs, Dijon mustard, and cream cheese. Whisk until smooth and then turn off the heat.
Fold the blanched cauliflower florets into the sauce with 1 ½ cups of the grated mozzarella cheese.
Pour the contents of the skillet into the prepared baking dish and smooth out the top. Sprinkle the panko crumbs and the parmesan cheese evenly over the top of the dish.
Place the baking dish, uncovered, into the prepared oven for 20 minutes. Remove from the oven and let rest for 5-10 minutes before serving. Enjoy!