Lay the ribs in a pan of cold water, place on the stovetop and bring to the boil. Reduce the heat and simmer the ribs for about 30 mins, or until they are tender.
Drain the ribs, rinse them under cold running water to cool quickly, then drain well and place in a bowl.
To make the marinade, put all the ingredients except the rum in a saucepan, place on a low heat and stir until the sugar has melted. Increase the heat and bring the sauce up to a simmer and cook until the volume has reduced by about half. Remove the pan from the heat, stir in the rum, and leave the sauce to cool.
Pour the cold sauce over the ribs and stir them to ensure they are well coated. Cover the bowl and leave to marinate overnight (or a couple of days) stirring the ribs a couple of times if possible.
Lift the ribs out of the marinade and cook them on a hot grill for 10-15 mins, turning them occasionally until they are heated through.
Any extra marinade can be brushed over the ribs during cooking.
Serve immediately with tomato ketchup as a dipping sauce.