Grease a 9x13-inch baking dish with butter and arrange the dry bread slices in the baking dish in two rows.
In a large bowl, whisk together eggs, milk, heavy cream, brown sugar, and vanilla extract. Pour evenly over the bread.
Cover the baking dish with plastic wrap or a lid and refrigerate overnight.
To make the topping, mix flour, brown sugar, pecans, cinnamon, and salt together in a bowl. Grate the cold butter on top and mix until crumbly. Store in a plastic bag or container in the fridge until ready to use.
On the next morning, remove the casserole from the fridge and let it sit at room temperature for 30 minutes. Meanwhile, preheat the oven to 375°F (190°C).
Sprinkle the topping over the French toast and bake, uncovered, for 40–45 minutes until browned and set but soft in the middle. If it browns too fast, cover it with aluminum foil. (If you like your French Toast Casserole more set, bake for a few more minutes.)
Serve warm, drizzled with maple syrup.