Rub a small saucepan with 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-5 minutes. Stir in the ham, season with salt and pepper, and transfer to plate.
Add the butter to the skillet. Once the butter melts, add the flour and whisk one 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-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 Gruyère and half the Parmigiano-Reggiano into the besciamella (white sauce) and add a few dashes of Tabasco; season. Drain the pasta and add to the sauce along with the leek and ham mixture. Transfer to a 3-quart casserole dish and top with the remaining Parmigiano-Reggiano. Broil until the filling is bubbly and top is browned, 2-3 minutes.