Preheat oven to 350°F. Prepare 2 baking sheets with parchment. Evenly spread hazelnut flour onto one baking sheet and whole hazelnuts onto the other, then place into the oven to toast.
Bake hazelnut flour for 10 minutes ensuring that you stir every 5 minutes to promote even toasting. Remove the toasted hazelnut flour from the oven and allow to cool for about 30 minutes.
Bake whole hazelnuts for 15 minutes, then immediately transfer into a kitchen towel, and wrap tightly. Allow the hazelnuts to ‘steam’ for 1-2 minutes. Next, using the kitchen towel, roughly rub the hazelnuts together to get the skin off (if a few pieces of skin remain that’s okay!). Allow the hazelnuts to cool, then roughly chop them. Set aside.
Prepare a 9×9” baking pan with cooking spray and parchment.
Add chopped chocolate to a heatproof bowl and place over of a pot of simmering water, ensuring the bowl fits tightly over the pot of water and that the bottom does not touch the water. Heat, while stirring with a rubber spatula, until all the chocolate has melted. Set aside to cool until just warm (but still very liquid).
In a large mixing bowl, add white sugar, brown sugar, and eggs. Whisk together by hand for about 1 minute. The mixture should look creamy and well-combined. Next, pour in the butter, vanilla, and melted chocolate. Whisk together until well-combined.
In a separate bowl, whisk together the flour, sifted cocoa powder, salt, and toasted hazelnut flour. Add these dry ingredients into the wet ingredients, then fold them into the batter with a rubber spatula, until the batter is smooth, well-combined, and thick. Add in the chopped hazelnuts and fold in.
Pour the batter into the prepared pan and smooth it out. Dollop the Nutella around the top, then using a wooden skewer or knife, swirl the Nutella into the batter. Place into the oven to bake for 40-45 minutes. When done, the brownies will seem slightly under-baked in the center, but they will continue to set as they cool. Allow to cool before slicing.