Preheat the oven to 160C/140C Fan/Gas 3. Grease 3 x 20cm/8in sandwich tins and line the base of each tin with baking parchment.
Mix the flour, baking powder and walnuts together in a bowl. In a separate bowl, cream the butter and sugar together until pale and fluffy. Beat in the eggs a little at a time.
Fold in the flour mixture using a large metal spoon. Divide the mixture equally between the 3 tins and level the surfaces.
Bake for about 25-30 minutes, or until the cakes are golden-brown and springy to the touch. Leave to cool in the tins for a few minutes then turn out, peel off the parchment and finish cooling on a wire rack.
For the caramelised walnuts, tip the sugar and 2 tablespoons water into a pan and heat over a low heat until the sugar begins to melt. Increase the heat and cook the caramel to a dark golden colour (CAUTION: boiling sugar is extremely hot. Handle very carefully). Remove from the heat, add the walnut halves and swirl to coat in the caramel. Transfer the walnut halves to a silicon sheet and leave to set.
For the buttercream, put the butter, vanilla extract, 1 tablespoon of the milk and half the icing sugar in a large bowl and beat until smooth. Beat in the remaining icing sugar. Pour in the rest of the milk, if needed to make the buttercream the right consistency.
Spread half of the buttercream over one of the cooled sponges and place the second sponge on top. Spread the remaining buttercream over the second sponge and top with the third sponge.
For the boiled icing, measure the egg whites, sugar, 4 tablespoons water and cream of tartar into a heatproof bowl set over a pan of hot water and whisk for 8-10 minutes until thick.
Working quickly (the icing sets rapidly), cover the top and sides of the cake with the icing, swirling the icing to form softened peaks. Leave to set in a cool place, but not in the fridge. Decorate with the caramelised walnuts.