Bring a large pot of salted water to a boil. Cook the pasta according to the package directions until al dente. During the last 2 minutes of cooking, add the broccoli florets. Drain, reserving ½ cup of the pasta water.
While the pasta cooks, season the chicken with Italian seasoning, garlic powder, smoked paprika, salt, and black pepper. Heat the olive oil in a large skillet over medium-high heat. Cook the chicken for 6–8 minutes, turning occasionally, until golden brown and cooked through. Transfer to a plate.
Cook the bacon until crispy. Transfer to a paper towel-lined plate and crumble into small pieces. Reserve 1 tablespoon of the bacon drippings in the skillet.
Add the butter to the skillet with the bacon drippings. Stir in the garlic and cook for 30 seconds. Whisk in the flour and cook for 1 minute. Slowly whisk in the chicken broth, heavy cream, and milk. Cook for 3–5 minutes, stirring constantly, until slightly thickened. Add the Parmesan cheese, mozzarella cheese, onion powder, Italian seasoning, and crushed red pepper flakes (if using). Stir until smooth and creamy. Season with salt and pepper to taste.
Return the cooked chicken to the skillet. Add the cooked pasta, broccoli, and crumbled bacon. Toss until everything is coated in the creamy sauce. If needed, stir in a little reserved pasta water to loosen the sauce. Cook for 1–2 minutes until heated through.
Garnish with chopped parsley, extra Parmesan cheese, and freshly cracked black pepper. Serve immediately.
Notes
Feel free to adjust the amount of crushed red pepper flakes based on your spice preference.
For a lighter version, you can substitute half-and-half for the heavy cream.
This dish is best served fresh but can be stored in the refrigerator for up to 3 days.