Preheat the oven to 375 degrees F. Lightly butter a shallow 2-quart baking dish.
Line a baking sheet with paper towels. Peel the celery root, then quarter and slice 1/4 inch thick. Heat 2 tablespoons olive oil in a large skillet over medium heat. Working in batches, add the celery root to the skillet in a single layer and cook, turning, until browned, about 10 minutes per batch. Remove with a slotted spoon and drain on the paper towels.
Meanwhile, peel the potatoes and slice 1/4 inch thick. Add another 2 tablespoons olive oil to the skillet. Working in batches, add the potatoes in a single layer and cook, turning, until browned and tender, about 10 minutes per batch. Remove with a slotted spoon and drain on the paper towels with the celery root.
Peel the pear, core and slice 1/4 inch thick. Add the remaining 2 tablespoons olive oil to the skillet. Add the pear in a single layer and cook, turning, until browned, about 10 minutes; transfer to the paper towels. Lightly season the celery root, potatoes and pear with salt and pepper.
Heat the cream and garlic in a saucepan over medium-high heat until just simmering; remove from the heat. Combine the gruyere, parmesan, thyme and 1 teaspoon each salt and pepper in a bowl.
Spread the celery root in the prepared baking dish. Sprinkle one-third of the cheese mixture on top. Remove the garlic from the cream, then pour one-quarter of the cream over the cheese. Layer the potatoes on top, then sprinkle with another one-third of the cheese mixture; pour another one-quarter of the cream on top. Top with the pear slices and sprinkle with the remaining cheese mixture. Pour the remaining cream over everything.
Cover the dish with aluminum foil and bake 30 minutes, then uncover and bake until the gratin is bubbly and browned, 5 to 10 more minutes. Let cool 15 minutes before serving.