For the asparagus, ham and eggs, prepare a bowl of iced water.
Bring a wide pan of salted water to the boil and add the vinegar. Reduce the heat until the water is just simmering. Crack one duck egg into a small bowl. Stir the water with the end of a wooden spoon to create a whirlpool, then carefully pour the duck egg into the vortex and simmer for 3-4 minutes, or until cooked to your liking.
Remove the egg from the water using a slotted spoon and carefully lower into the iced water.
Poach the remaining duck eggs in the same way. Set aside the pan used to poach the eggs and the poaching water.
For the hollandaise sauce, melt the butter in a saucepan, then remove from the heat and set aside to cool completely.
In a separate saucepan, heat the vinegar, shallot and peppercorns until just boiling, then reduce the heat until the mixture is simmering. Continue to simmer until the volume of liquid has reduced by half (about 2 minutes).
Whisk the egg yolks with a pinch of salt in a bowl using an electric whisk. With the whisk running, slowly add the melted butter – drop by drop at first – until it has all been incorporated into the egg yolks.
Strain the vinegar mixture through a fine sieve into the egg mixture, whisking until combined. (Discard the shallot and peppercorns.) Season the sauce, to taste, with salt and freshly ground black pepper, then cover and keep warm in a bowl suspended over a pan of hot water.
Working quickly, return the pan of water used to poach the eggs to the heat and bring to the boil. Add the asparagus spears and boil for 3-4 minutes, or until the stems are just tender when pierced with the tip of a knife. Remove from the pan using a slotted spoon and set aside to drain on kitchen paper.
Return the poached eggs to the poaching water and re-heat for 20-30 seconds, then remove from the pan using a slotted spoon and set aside to drain on kitchen paper.
To serve, divide the asparagus spears equally among four serving plates. Top each portion with a poached duck egg and a few slivers of ham. Spoon over the warm hollandaise sauce. Sprinkle everything with salt and freshly ground black pepper, then serve.