Preheat the oven to 200 C / Gas 6. Grease a 23cm loose bottomed cake tin and dust with cocoa powder.
Lay the hazelnuts out on a baking tray.
Bake in the preheated oven for 10 minutes, or until golden brown. Remove from the oven and allow to cool slightly. Measure out 200g of the hazelnuts then blend in a food processor until they resemble fine breadcrumbs, set aside.
With the remaining 100g, divide into two then place half in a bowl and set the other half aside. Into the bowl, pour over the melted milk chocolate and mix well. Line a baking tray with baking parchment then spread out the chocolate coated nuts and place in the fridge to chill.
Reduce the oven temperature to 180 C / Gas 4.
For the cake:
In a bowl, combine the egg yolks and sugar and whisk until thick and creamy. Add the vanilla extract and chocolate liqueur and mix well.
Combine the butter and dark chocolate in a bowl over boiling water. Stir until melted then fold in the 200g ground hazelnuts and allow to cool for 10 minutes. Mix in the egg yolk mixture.
In a separate bowl, whisk the egg whites until stiff peaks form, then fold into the cake mixture.
Transfer the mixture into the prepared cake tin and smooth the top.
Bake in the preheated oven until a skewer inserted into the centre comes out clean, about 40 minutes. Remove from the oven and allow to cool fully on a cooling rack. Remove the cake from the tin and place on a serving plate.
Spread the chocolate hazelnut spread neatly and evenly over the top of the cake. Remove the chocolate covered hazelnuts from the fridge and combine with the remaining plain hazelnuts. Arrange the hazelnuts whole or chopped on top of the cake in a pleasing way. Serve.
To ensure that this cake is gluten free, use the gluten free versions of ingredients or check the labels for gluten additives.