Steam the leeks for 2–3 minutes or until tender. Cut the ham slices in half and wrap each leek in half a piece ham. Place the leeks in the bottom of an ovenproof dish that is just large enough to hold them.
Melt the butter in a small saucepan. Add the flour and cook for 1 minute, stirring. Gradually add the milk, stirring continuously, until you have a smooth sauce. Simmer for 1 minute then pour over the leeks.
Mix together the breadcrumbs and cheese and sprinkle over the leeks. Arrange the tomatoes (if using) on top, cut side up. Cook in a preheated oven, 200°C (400°F), Gas Mark 6, for 20 minutes until golden and bubbling.