Put the gammon in a large pan and cover with 2 litres of ginger ale. Top up with water to cover the joint, if you need to. Add the whole allspice berries and bring to a boil. Turn the heat down to low, and simmer gently, covered, for 2½ hrs. Top up with water, if you need to, while it’s simmering.
Drain the ham and leave until it’s cool enough to handle while you make the glaze. Put the remaining ginger ale in a pan with the sugar, grated ginger and crushed allspice. Simmer, uncovered, for 20-25 mins until syrupy.
Heat the oven to 190C/170C fan/gas 5. Remove the skin from the ham, leaving a layer of fat, then score the fat in a criss-cross pattern. Transfer the ham to a foil-lined roasting tin, and brush over half the glaze. Roast for 15 mins, then glaze with the remaining syrup. Increase the temperature to 200C/180C fan/gas 6 and roast for a further 15-20 mins until you get a sticky golden crust. Leave to cool for 15 mins before carving. Drizzle over more glaze from the tin to serve, if you like. Can be made ahead and chilled for up to four days.