Rub a small saucepan with the garlic; leave the garlic in the pan. Add the milk and stock and heat over medium just until warm. Remove from heat and cover to keep warm.
Bring a large pot of water to a boil for the pasta.
In a deep skillet or wide saucepan, heat the EVOO, one turn of the pan, over medium to medium-high. Add the leeks and thyme and cook, stirring occasionally, until leeks are wilted, 3 to 5 minutes. Stir in the ham, season with salt and pepper, and transfer to a plate. Add the butter to the skillet. Once the butter melts, add the flour and whisk 1 minute to make a roux. Whisk the warm milk mixture into the roux and season with salt, pepper and nutmeg. Simmer, stirring occasionally, until slightly thickened, 3 to 5 minutes.
Position a rack in the upper third of the oven; preheat the broiler.
Salt the boiling water and add the pasta. Cook, stirring often, until al dente.
Stir the Gruyere and half the Parmigiano-Reggiano into the besciamella (white sauce) and add a few dashes Tabasco; season. Drain the pasta and add to the sauce along with the leek and ham mixture. Transfer to a 3-quart casserole dish. Top with the remaining Parmigiano-Reggiano. Broil until the filling is bubbly and the top is browned, 2 to 3 minutes.