Melt 2 tablespoons butter in a small saucepan over medium-low heat. Whisk in flour and cook for 1 minute. Whisk in milk and bring to a boil. Reduce heat to low. Season with Dijon, nutmeg, salt, and pepper. Cook until sauce coats the back of a spoon, about 3 to 5 minutes. Remove sauce from the heat.
Fill a large saucepan with 2 to 3 inches of water and bring to a boil. Reduce the heat to medium-low, pour in vinegar, and keep the water at a gentle simmer. Crack an egg into a small bowl then gently slip egg into the simmering water, holding the bowl just above the surface of water. Repeat with the remaining egg. Cook eggs until the whites are firm and the yolks have thickened but are not hard, 2 1/2 to 3 minutes. Remove the eggs from the water with a slotted spoon, dab on a kitchen towel to remove excess water, and place onto a warm plate.
Melt remaining butter in a skillet over medium heat. Add bread and toast in melted butter on both sides. Top bread slices liberally with warm sauce, then top with ham and Gruyere cheese. Place poached eggs on top.
Cover the pan with foil or a lid and turn off heat. Let stand until cheese has melted and sauce and eggs have set, about 5 minutes.
Serve immediately, spooning any leftover sauce on top of eggs. Season with salt and pepper and sprinkle with chives and paprika.