This is a great French-inspired sandwich you can find in any French restaurant. Once you try this, it will be hard to have “just” a ham and cheese sandwich again. Don’t cheat and use Swiss cheese, this deserves the real thing!
Set an oven rack about 6 inches from the heat source and preheat the oven’s broiler.
Melt 1 1/2 tablespoons butter in a saucepan over medium-low heat. Whisk in flour and stir until slightly brown, about 3 minutes. Whisk in milk; bring to a boil, stirring constantly. Once boiling, reduce heat immediately and simmer for 5 minutes. Add 1/2 of the Gruyere cheese, salt, pepper, and nutmeg; heat until cheese is melted, about 2 minutes. Remove from the heat and set aside.
Spread about 1 teaspoon butter on 2 pieces of bread. Spread 1 tablespoon cheese sauce on top and layer each with a ham slice. Spread 1 teaspoon butter on the remaining 2 pieces of bread, then spread Dijon mustard on top and sprinkle with remaining Gruyere. Transfer all 4 pieces to a baking sheet.
Broil in the preheated oven until cheese is almost melted, 2 to 3 minutes. Remove from the oven, place toast slices together to make 2 sandwiches and pour remaining cheese sauce on top of each sandwich. Return to the broiler until sauce starts to brown, about 2 minutes.
While the sandwiches are broiling, heat remaining butter in a nonstick skillet over medium-high heat. Crack 2 eggs into the skillet, keeping them completely separate from one another. Season with salt and pepper. Add water, cover, and baste until whites are set but yolks are still runny, about 2 minutes.
Top each sandwich with an egg and sprinkle with dill. Serve immediately.
Per Serving: 639 calories; protein 25.3g; carbohydrates 37.3g; fat 43.2g; cholesterol 293.6mg; sodium 1264.1mg.