Cook the rotini pasta according to the package instructions until just tender.
Drain the pasta thoroughly.
Toss the cooked pasta with a small amount of olive oil to prevent it from sticking together, then set aside.
Preheat the oven to 180°C / 350°F.
Lightly grease a suitable baking dish with olive oil or cooking spray.
Heat a small amount of olive oil in a large pan over medium heat.
Add the chopped bacon and chopped onion to the pan.
Cook until the onion has softened. The bacon does not need to become crisp.
Add the cubed chicken breasts to the pan.
Cook the chicken until browned on all sides.
Add the grated garlic and stir briefly until fragrant. Add the garlic at this stage to prevent it from burning.
Add the chopped brown mushrooms and cooked rotini pasta to the pan.
Toss the mixture until the pasta, chicken, bacon, onion, garlic, and mushrooms are evenly combined.
Season lightly with salt and black pepper.
To prepare the Alfredo sauce, melt the butter in a saucepan over medium-low heat.
Add the flour to the melted butter.
Stir continuously until the flour is fully incorporated and no raw flour is visible.
In a separate jug or bowl, combine the milk and cream.
Gradually add the milk and cream mixture to the butter and flour mixture, adding a small amount at a time.
Stir well after each addition to form a smooth sauce.
Continue cooking and stirring until all the liquid has been added and the sauce has thickened.
Add the shredded Parmesan cheese and shredded cheddar cheese.
Stir until the cheeses have fully melted and the sauce is smooth.
Season the Alfredo sauce with salt and black pepper to taste.
Spoon approximately 3/4 of the Alfredo sauce into the rotini mixture.
Toss until the pasta and chicken mixture is evenly coated.
Transfer the coated pasta mixture to the prepared baking dish.
Pour the remaining Alfredo sauce evenly over the top.
Sprinkle shredded mozzarella cheese over the surface.
Bake for approximately 20 minutes, or until the sauce is bubbling and the cheese has melted.
For a lightly browned or charred top, place the dish under the oven grill briefly at the end of baking, watching carefully to prevent burning.
Remove the baking dish from the oven.
Allow the Chicken Alfredo Bake to rest for several minutes before serving.
Garnish with chopped parsley.
Serve warm.