Preheat oven to 400°F.
Combine cheeses in a large bowl. Transfer 1/3 of cheese mixture to a separate bowl and set aside. Add cream, garlic, shallots, and thyme to cheese mixture. Season generously with salt and pepper. Add potato slices and toss with hands, making sure to get this creamy goodness all over ever single slice of thin potatoes. Yes every single one. It is worth it!
Grease a 2-quart casserole dish with butter. Pick up a handful of potatoes, organizing them into a neat stack, and lay them in the casserole dish with their edges aligned vertically. Continue placing potatoes in casserole, working around the perimeter and into the center until all potatoes have been added. Potatoes need to be very tightly packed, which means I often sneak more in once the casserole is full, sticking them in between any slices I can. Pour some of the excess cream/cheese mixture evenly over potatoes, until the mixture comes half way up the sides of the casserole. Reserve the excess cream mixture.
Cover tightly with foil and transfer to oven. Bake for 30 minutes. Remove foil, pour any excess cream mixture over the potatoes and continue baking, uncovered, until the top is a pale golden brown, about 30 minutes longer. Remove from oven, sprinkle with remaining cheese and continue baking until the top is a deep golden brown and edges are starting to crisp, about another 30 minutes longer. Remove from oven, let rest for a few minutes, and serve.