Place the baby potatoes in the microwave for 8 minutes, or boil them whole for about 15–20 minutes.
In a skillet, sauté the onion in butter until softened.
Arrange the potatoes in a single layer in a baking dish and press them lightly with a glass or your hand to break them up a bit.
Add the onion on top and cover everything with the milk, heavy cream, garlic, cheeses, and pepper. (Gruyère is already salty, so you may not need to add salt.)
Bake in a preheated convection oven at 200 degrees for about 30 minutes or until thick bubbles begin to form on the baking dish.