Fresh ham joints can be very salty, so it's best to soak it in cold water overnight. If you're short on time, or just clean forgot to soak it the night before, instead cook the joint in a large pan of water for 40 minutes to get rid of excess salt. Remove from the pan and discard the salted liquid.
Weigh the joint to calculate the cooking time. Place in a clean pan and cover completely with water. Add the peppercorns, bay leaves, ginger, star anise, and half the cloves and bring to a boil, then turn down the heat to a simmer. The joint needs 25 minutes simmering time per 1lb (450g) (so mine took 1 hour 50 minutes).
Thirty minutes before the joint is ready, preheat the oven to 425 degrees F (220 degrees C). Mix all the glaze ingredients in a small pan heat gently to dissolve the sugar, then simmer for 25 minutes until reduced and thickened.
Remove the joint from the water and pat dry with paper towels. Keep the cooking liquid, it is delicious. (I boil it like mad to reduce the quantity and increase the flavor, adding carrots, onions, a splash of Madeira, and some seasoning for a tummy-warming soup.) Remove the thick layer of skin (but not the fat) from the joint. This can be quite fiddly and often comes off in bits rather than in one large piece. Use a sharp small knife to score the meat diagonally, then change direction and score the other way to form diamonds. Stick the remaining cloves into the holes where the lines cross, then pour the glaze over the meat. Put the joint in the oven and cook for 20 to 30 minutes, or until the top begins to brown. It can catch easily at this point because of the honey, so keep a close eye on it!
Once the joint is cooked, remove from the oven and cover loosely with parchment paper to let it "rest." This evens out the temperature and makes the meat more juicy. Serve with hunks of bread and cold potatoes.