Preheat oven to 375°F.
Grease a 9 x 13 baking dish with 1 tablespoon of butter. Set aside. Prepare an ice bath (a large bowl of cold water and ice cubes). Also set aside.
Fill a large pot ¾ of the way with water and bring to a boil over high heat. Once the water has come to a boil, add a handful of salt. Drop in the brussels sprouts and cook until just tender (about 5 minutes). You can test for doneness by piercing one of the sprouts with a fork. The fork should go in with some ease, but there should still be a little resistance left. Using a large slotted spoon, transfer brussels sprouts to the ice bath. Drain and gentle dry with paper towels.
In a large bowl, stir together the flour, Gruyère, Parmesan cheese, lemon zest, 2 teaspoons of kosher salt and the freshly ground pepper. Add the cream, brussels sprouts and caramelized shallots, stirring to combine. Transfer the mixture to the prepared baking dish and smooth out the top.
To make the topping, add bread crumbs, melted butter, lemon zest, salt, pepper and parsley to a medium bowl, stirring to combine. Sprinkle the topping evenly over the gratin.
Bake until the bread crumbs are golden brown (30 – 35 minutes). Let the gratin rest for 10 – 15 minutes before serving.