Heat oil in a large skillet over medium-high; cook sausage about 8 minutes until browned and cooked through, breaking up with a spoon. Transfer to plate.
Cook mushrooms and onion in same skillet about 10 minutes until mushrooms release liquid and turn golden brown. Add garlic; cook 1 minute more.
Grease a 9x13-inch dish; spread bread in bottom and top with sausage, mushrooms, and both cheeses.
Whisk eggs, milk, Italian seasoning, salt, and pepper in a large bowl; pour evenly over casserole.
Press gently with spatula to moisten everything; cover with foil and refrigerate overnight.
Next morning, preheat oven to 350°F; stand casserole at room temperature 15 minutes.
Bake covered 30 minutes; uncover and bake another 10-15 minutes until golden and set.
Cool 5 minutes before serving.