Preheat the oven to 100C/80C Fan/Gas ½.
Heat the oil in frying pan over a high heat. Quickly fry the beef fillet, turning it every few seconds, until browned on all sides.
Cut 4 large pieces of heatproof cling film or aluminium foil big enough to roll the beef fillet in, and place them on top of each other. Place the beef fillet in the centre and wrap it very tightly to form a cylinder, twisting the ends to secure. Place the wrapped beef fillet on a baking tray and roast in the oven for an hour.
Remove the beef from the oven, set aside until cooled to room temperature, then chill in the fridge until completely cold.
Meanwhile, heat a knob of butter in a frying pan over a medium heat. When the butter is foaming, add the chopped mushrooms and fry for 1-2 minutes, or until all of the liquid has evaporated and the mushrooms have softened. Transfer the mushrooms to a bowl and wipe the pan with a piece of kitchen roll.
Add a little more butter to the pan, then fry the spinach for a minute, or until just starting to wilt. Remove the pan from the heat and continue to stir the spinach until completely wilted. Transfer to a bowl and set aside.
Next, make the pancakes. Place the two whole eggs and the flour in a bowl and whisk together until well combined. Gradually whisk in the milk until the mixture forms a smooth batter that is thick enough to coat the back of a spoon.
Heat a knob of butter in a frying over a high heat. When the butter is foaming and starting to smoke, add a ladleful of the pancake batter and swirl the pan to evenly coat the base. Fry for 1-2 minutes, or until the underside of the pancake is golden-brown. Flip the pancake over and cook for a further minute, or until the pancake is cooked through and golden-brown all over. Slide the pancake out onto a plate lined with greaseproof paper, then cover it with another layer of greaseproof paper. Repeat the process with the remaining butter and pancake batter.
Place the chicken liver pâté in a bowl and beat until smooth and soft.
Increase the oven temperature to 230C/210C Fan/Gas 8.
Roll out the puff pastry on a lightly floured work surface to a rectangle measuring 40x50cm/16x20in with a thickness of 2-3mm (it needs to be large enough to wrap the beef fillet).
Arrange the pancakes all over the pastry, overlapping the edges slightly and leaving a 2.5cm/1in border free at the edge. Trim the overlapping edges of the pancakes using a sharp knife so they sit in one even layer.
Spread the softened pâté in an even layer all over the pancakes. Arrange a layer of wilted spinach on top. Spread the cooked mushrooms on top of the spinach. Season, to taste, with salt and freshly ground black pepper. Finally, peel the cling film or foil from the beef fillet and place it in the centre.
Whisk the egg yolks in a bowl, then brush them around the pastry border. Tightly roll the beef fillet in the pastry, ensuring the seal sits at the bottom of the Wellington. Tuck the ends underneath the Wellington without trimming them. Transfer the Wellington to a baking tray lined with baking paper and brush all over with the remaining beaten egg yolks. If desired, decorate with pastry trimmings.
Bake the beef Wellington in the oven for 20-25 minutes (for medium), or until the pastry has risen and is golden-brown.
Meanwhile, heat a knob of butter in a frying pan over a high heat. When the butter is foaming, add the wild mushrooms and fry for 2-3 minutes, or until just softened. Add the Madeira and set it alight using a match. (Caution: Keep eyes and hair away from the flames and switch off the extractor fan before flaming.) Allow the flames to flare up and die down.
Add the concentrated beef stock and bring to the boil, then reduce the heat until the mixture is simmering. Continue to simmer for 3-4 minutes, or until the volume of liquid has reduced by one-third. Stir in the remaining butter until melted.
To serve, carve the beef Wellington into thick slices and place each into the centre of a serving plate. Drizzle the mushroom and Madeira sauce around the edge of the plates.