Grease a 9x13-inch baking dish.
Place 8 slices of bread on the bottom, covering the dish.
Top with ham slices, then sprinkle evenly with cheese.
Add a second layer of bread over the cheese.
In a bowl, whisk together eggs, milk, Worcestershire, mustard, onion powder, and salt.
Add chopped green onions and red bell pepper, if using.
Pour the egg mixture evenly over the casserole.
Cover with foil and refrigerate overnight.
In the morning, preheat the oven to 350°F (175°C).
Remove foil, sprinkle with crushed cornflakes or panko, and drizzle melted butter on top.
Bake uncovered for 55–60 minutes until golden and set.
Let rest 10 minutes before slicing and serving.