Preheat the oven to 220ºC/425ºF/gas 7. Place the porchetta on a board, skin-side down, then rub all over with a good pinch of salt and pepper.
To make the stuffing, finely slice the onions and sage leaves. Heat a lug of olive oil and the butter in a large pan over a medium-low heat, then add the onions, sage, pine nuts, fennel seeds and a pinch of salt and pepper. Cook for 25 to 30 minutes, or until soft and lightly golden, stirring occasionally. Meanwhile, place the raisins and Vin Santo in a bowl and leave aside to soak. Slice and toast the sourdough until golden, then rub all over with the garlic and rosemary, then finely chop it.
Roughly chop and stir the livers into the pan. Turn the heat up to medium-high, stir in the soaked raisins, Vin Santo, chopped sourdough and lemon zest, then season well. Transfer to a bowl and leave aside to cool.
Once cooled, use clean hands to scrunch the mixture together, then place down the centre of the piece of pork. Hold the oysters curved-side down on a chopping board, look for the hinge between the top and bottom shell, then poke an oyster knife into the crack and prise it open (it’s not always easy, so you’ll need to use force here – but, be careful!). Press the oysters into the filling, and drizzle with any juices. Finely grate the Parmesan on top, then starting with one of the shortest edges, tightly roll up the pork. Tie the rolled meat with around 6 pieces of string to secure it, then drizzle with olive oil and season well, rubbing it all over the skin – this will help you get delicious crackling.
Place the pork into a large roasting tray and pop in the hot oven for 30 to 40 minutes, or until the skin is crisp and crackled. Meanwhile, halve the apples and carrots and quarter the onions.
Remove the pork from the oven and place the apple and veg underneath, then return to the oven and reduce the temperature to 180ºC/350ºF/gas 4. Cook for a further 1 hour 30 minutes, or until tender and cooked through. Remove the porchetta to a board and leave to rest for 30 minutes. Meanwhile, place the roasting tray over a medium heat on the hob. Mix in the flour and continue stirring and scraping all those dark, gnarly bits from the bottom of the tray. Pour in the stock and bring to the boil for around 5 minutes, or until thickened to a lovely gravy consistency, stirring occasionally. Strain the gravy through a sieve, pressing with a spoon to squeeze out all that lovely goodness, then discard the veg.
Remove the string from the porchetta and carve up. Serve with the homemade gravy, roast potatoes, curly kale and apple sauce.