Heat the cream, milk, sugar, cocoa powder, coffee powder, and salt over medium heat in a medium, thick-bottomed saucepan until it steams and bubbles form around the outer rim, whisking occasionally.
Slowly whisk ¾ cup of the cream mixture into the egg yolks, starting with just a couple drops at a time and adding it in a thin drizzle toward the end.
Pour the egg yolk mixture into the pot with the cream mixture and bring to a gentle boil over medium heat, whisking occasionally.
Turn off heat, strain the custard through a fine mesh sieve to remove any lumps, and add the chopped chocolate. Give it a brief stir to submerge the chocolate in the custard, let it sit for 2 minutes without stirring so the chocolate can melt, and then whisk to combine. Stir in the vanilla extract and all but 2 tablespoons of the chopped hazelnut (reserving the 2 tablespoons for topping).
Pour the custard into 6 small serving glasses. Cool to room temperature, then refrigerate to chill (at least 2 hours).
Before serving, sprinkle the remaining chopped hazelnut on top.
Notes
If you can’t find toasted hazelnuts, you can toast raw hazelnuts. Preheat oven to 300F; spread the hazelnuts on a baking sheet and bake until they’re golden and toasted, and their skins come off easily when rubbed (about 1 hour), shaking the pan every so often. Remove the hazelnuts from the oven, pour them onto a clean kitchen towel, wrap up the towel, and let it sit for about 5 minutes to help the skins steam off. Rub the nuts with the towel to remove the skins (don’t worry if the skins don’t all come off) and the let the nuts cool completely.
To intensify the chocolate hazelnut flavor, you can add ¼ cup of Nutella spread along with the cream mixture.