Preheat oven to 350 degrees F. Lightly spray a 9x13 baking dish with nonstick cooking spray; set aside. Bring a large pot of generously salted water to a boil. Add broccoli and cook 3-5 minutes, depending on how tender you like your broccoli. Using a slotted spoon or sieve, remove the broccoli and rinse with very cold water. Strain and remove to a plate. In the same pot, proceed to cook pasta al dente according to package directions (don't overcook because it's going in the oven). Melt 2 tablespoons butter with 2 tablespoons olive oil in a large saucepan. Add onions and sauté for 4 minutes. Add bell peppers and garlic and sauté an additional 2-3 minutes, until onions are soft. Sprinkle in the flour and cook, while stirring, for 2 minutes.
Turn heat to low then gradually whisk in half and half, chicken broth and all of the seasoning. Bring to a simmer, whisking constantly. Continue to simmer over medium heat, whisking often until thickened (but not overly thick), 5-10 minutes.
Turn heat to low and whisk in 1 cup shredded cheddar until melted followed by 1 cup shredded mozzarella until melted. Whisk in sour cream until blended. Stir in chicken, broccoli and half of the bacon until evenly coated, followed by pasta (Note: If your skillet is too small, combine everything together in a large pot like the one you cooked the pasta in.)