Prep the oven and pan: Preheat oven to 375°F (190°C).
Grease a 9x13-inch casserole dish.
Cook the bacon: In a large skillet over medium heat, cook chopped bacon until crisp. Remove with a slotted spoon to a paper towel-lined plate. Leave about 1–2 tablespoons bacon fat in the pan.
Sauté the aromatics: Add butter to the skillet.
When melted, stir in minced garlic. Cook 30–60 seconds, just until fragrant. Don’t brown the garlic.
Build the Alfredo: Lower heat.
Whisk in cream cheese until mostly smooth. Slowly pour in heavy cream and chicken broth, whisking to combine.
Season and thicken: Add Italian seasoning, onion powder, crushed red pepper (if using), and a pinch of salt and pepper. Simmer 3–5 minutes, stirring, until slightly thickened.
Stir in cheese: Remove from heat.
Whisk in Parmesan until melted and silky. Taste and adjust salt and pepper. The sauce should be rich and well-seasoned.
Par-cook the vegetables: If using fresh broccoli or cauliflower, steam or microwave until just tender-crisp (about 3–4 minutes).
Drain well to avoid watering down the sauce. For riced cauliflower, sauté briefly in a little oil to cook off moisture.
Combine the filling: In a large bowl, add cooked chicken, par-cooked vegetables, half the bacon, and half the mozzarella. Pour the Alfredo sauce over the top and toss to coat evenly.
Assemble the casserole: Spread the mixture into the prepared baking dish.
Top with remaining mozzarella and the rest of the bacon.
Bake: Bake 18–22 minutes, until the casserole is bubbling and the cheese is melted with golden spots.
Optional broil: For extra color, broil 1–2 minutes, watching closely to avoid burning.
Finish and serve: Let rest 5–10 minutes to set. Garnish with chopped parsley. Serve warm.