In a large skillet over medium heat, cook Italian sausage until browned, breaking it into crumbles. Add onion and bell pepper, cooking until softened, about 5 minutes. Stir in spinach until wilted. Drain any excess grease and let cool.
Spray a 9x13-inch baking dish with cooking spray. Spread cubed bread evenly in the bottom.
Layer the sausage and vegetable mixture over the bread. Sprinkle mozzarella and Parmesan cheese on top.
In a large bowl, whisk together eggs, milk, Italian seasoning, salt, and pepper until well combined.
Pour egg mixture evenly over everything in the baking dish. Press down gently to ensure bread absorbs the liquid.
Cover tightly with plastic wrap and foil. Freeze for up to 3 months, or refrigerate overnight and bake the next day.
To bake from frozen: Thaw in refrigerator for 24 hours. Remove from fridge 30 minutes before baking. Preheat oven to 350°F.
Remove plastic wrap, cover with foil, and bake for 30 minutes. Remove foil and bake an additional 15 minutes until golden and eggs are set in the center.