In a saucepan melt butter over medium heat and once ready add the flour and mustard powder. Stir well to make a roux and cook out for around a minute or so.
Slowly add some of the milk, stirring/whisking until smooth and lump free. Continue to add the rest of the milk until the sauce is smooth.
Remove from the heat and add the grated Gruyere, stir well in and add salt and pepper to taste. Set aside for later.
In a small bowl, combine both the cheese together and keep a small handful aside for the end. Spread a thin layer of mustard on each slice of bread. On the base, add a small spoon of the bechamel, then layer up with the ham and both cheeses. Pop the lid on, mustard side down and press down lightly.
In a frying pan, melt half of the butter on medium heat, and then carefully place your sandwich in the pan. Lightly toast for 2-3 minutes each side, adding the remaining cutter when flipping. Cook until lightly golden brown and the cheese is starting to melt.
Transfer the sandwiches onto a baking tray and into the oven for 5 minutes (180*c). Meanwhile fry your egg in a little butter or flavourless oil.
Remove the sandwich from the oven and then top with a generous layer of bechamel and a tiny sprinkling of cheese, it doesn’t matter if it drips over the edge! Pop under a grill and keep an eye on it so it doesn’t burn, we want the bechamel to colour slightly and the cheese to bubble, at which point place it on your plate and top with the fried egg. Sprinkle over a little chopped chives for a final garnish and serve.