To make the endive marmalade, heat the vegetable oil in a large saucepan. Add the endive, onion and garlic and cook gently until soft and lightly coloured. Put the red wine, port, orange zest and juice, thyme, rosemary, sugar and star anise into another saucepan and bring to the boil, then lower the heat and simmer for 15 minutes to infuse the flavours. Strain, then pour the liquid into the pan of endive and onion and turn the heat to medium. Season with salt and pepper and cook slowly for about 45 minutes, or until the mixture has reduced to the consistency of a jam.
Put the orange juice into a small saucepan and bring to the boil, then lower the heat and simmer until it has reduced by about three-quarters and is almost a caramel. Gradually whisk in the walnut oil until it emulsifies, then set aside for later.
To cook the pork belly, preheat your oven to 200°C/gas mark 6.
Put the onions, garlic, carrots and herbs into a roasting tray. Put the pork joint on top, drizzle with olive oil and season well. Roast in the oven for about 30 minutes, or until the crackling begins to form, at which point reduce the temperature to 150°C/gas mark 2. Add the stock and continue roasting for another hour or so, then remove from the oven and let the pork rest for 30 minutes.
Slice off the skin of the pork, and if it is not crisp, pop it back in the oven for 10 minutes or so. If it is crisp, slice it into 1cm strips. Strain the liquid from the roasting tray and reserve.
Carve each person a nice slice of pork, and serve with a spoonful of marmalade, a few walnuts crushed over and a couple of slices of crackling.
Finish with a spoonful of the roasting juices and some watercress, dressed with the orange and walnut emulsion.