Crack eggs into large mixing bowl and whisk to combine. Whisk in half and half and milk. Add brown sugar, cinnamon, salt and vanilla. Set aside.
Use softened butter to butter bottom and sides of a 9×13 baking dish. Cut bread into 1 inch chunks and place in dish. Whisk egg mixture one more time and then pour evenly over bread. Use a rubber spatula to very gently toss bread, moving bread on bottom to top, and making sure all of the piece on top get dipped in egg mixture. Spread out evenly, cover dish, and place in fridge overnight.
To make topping, place brown sugar, white sugar, cinnamon and nutmeg in a bowl and stir to combine. Cut cold butter into very small pieces and add to bowl. Use clean hands to break up butter and combine mixture until crumbly. Cover and place in fridge until morning.
When ready to bake preheat oven to 350 degrees. Remove plastic from dish and sprinkle topping evenly over top. Bake for 40-50 minutes or until top is golden brown. You can stick a knife or skewer in the casserole to make sure the egg mixture is set on the bottom. *Note I have left a generous baking time window because it varies on ovens and the size of your bread cubes. I used to cook this closer to 60 minutes at my old house, but in my new convection ovens it’s done closer to 45. Keep an eye on it and let me know how long yours takes to bake!
Let cool for 5-10 minutes before cutting into squares. Drizzle with melted butter and syrup, top with berries, whipped cream and a sprinkle of powdered sugar if desired.