Heat the skillet over medium heat and, when hot, add the sausage. Cook until sausage begins to brown, breaking it into small pieces with a wooden spoon, about 4 minutes.
Add the shallots to the skillet and continue to cook until meat is golden brown and the shallots are soft, about 2 minutes longer.
Remove the skillet from the heat and set aside.
Butter the baking dish and line the bottom with half of the bread slices.
Top the bread slices with half of the sausage-shallot mixture and half of the grated cheese. Make another layer with the remaining bread, sausage, and cheese.
In a mixing bowl, combine the eggs, half-and-half, salt, and pepper and whisk to combine.
Pour the egg mixture evenly over the layered bread mixture. Cover with plastic wrap and refrigerate for at least 1 hour and up to overnight.
Remove the casserole from the refrigerator and allow to come to room temperature for about 20 minutes. Position rack in center of oven and preheat the oven to 325º F.
Remove the plastic wrap and bake the casserole, uncovered, until puffed and golden brown, about 1 hour.
Using oven mitts or pot holders, remove the casserole from the oven and let rest for 5 minutes before serving.
YIELD: 8 to 10 servings