Preheat oven to 375°. In a large ovenproof skillet over medium heat, cook bacon, stirring occasionally, until crispy, about 8 minutes. Using a slotted spoon, transfer to a paper towel-lined plate and let cool slightly. Discard bacon fat.
Return skillet to medium heat and melt butter. Add shallots and Brussels sprouts; season with salt and cayenne. Cook, stirring occasionally, until tender, about 10 minutes.
Meanwhile, transfer bacon to a cutting board and finely chop.
Remove skillet from heat and drizzle with cream. Top with Gruyère, cheddar, and bacon.
Bake casserole until cheese is bubbly, 12 to 15 minutes. (If your cheese isn't golden, broil, watching closely, about 1 minute.)
