In a large skillet, cook the breakfast sausage over medium-high heat until browned and crumbly, then remove and drain on paper towels.
In the same skillet, sauté the bell peppers, onion, and mushrooms until softened, about 5-7 minutes, then set aside to cool.
Whisk together eggs, milk, salt, pepper, and paprika in a large bowl until thoroughly combined.
Grease a 9x13-inch baking dish and layer half the bread cubes, then add the sausage, bacon, sautéed vegetables, and both cheeses, then top with remaining bread cubes.
Pour the egg mixture evenly over the casserole, press down to soak the bread, cover tightly with aluminum foil and refrigerate overnight.
Preheat oven to 350°F, bake covered for 40 minutes, then remove foil and bake an additional 15 minutes until the top is golden and the center is set, then garnish with sliced green onions before serving.