Lightly grease a 3-quart baking dish with cooking spray; set aside.
Heat the oil in a large non-stick skillet and cook the onion and bell pepper for 2 - 3 minutes, until softened. Add the spinach and cook until wilted. Remove from heat.
Layer bread cubes, cooked veggies, ham, and cheeses in the prepared baking dish.
In a large bowl, add the egg whites, milk, heavy cream, salt and pepper and whisk to combine. Pour over bread mixture. Cover and refrigerate for 8 hours to overnight.
Preheat the oven to 350º F. While the oven is heating, let casserole sit at room temperature for at least 30 minutes before baking.
Bake the casserole in the preheated oven for 1 hour - 1 hour and 15 minutes, until a knife inserted in to the center comes out clean. Let the casserole stand for 10 minutes before serving.