Whisk the flour, sugar, and salt in a large bowl. Add the cold butter and cut it in with a pastry blender or fingertips until the mixture contains flat flakes and pea-sized pieces; do not work it into fine crumbs. Drizzle in the ice water while tossing with a fork. Squeeze a handful: it should hold together without feeling wet. Press the shaggy dough into a 1-inch-thick disk, wrap it tightly, and refrigerate for 60 minutes to hydrate the flour and relax the gluten.
Lightly flour the counter and rolling pin, then roll the chilled dough from the center outward into a 12-inch circle about 1/8 inch thick. Rotate it frequently and add only enough flour to prevent sticking. Transfer the dough to a 9-inch metal pie plate without stretching it, press it gently into the corners, and trim the overhang to 1 inch. Fold the edge under and crimp firmly. Refrigerate the shaped shell for 20 minutes while heating the oven to 375°F or 190°C, conventional setting.
Set the chilled pie plate on a rimmed baking sheet. Line the pastry with crumpled and flattened parchment, then fill it completely with pie weights so the sides stay supported. Bake on the lower-middle rack for 20 minutes. Lift out the parchment and weights, then bake for 12 to 16 minutes more, until the base looks dry and the entire shell is golden brown. Brush a thin, even coat of egg white over the hot interior and bake for 2 minutes to set the moisture barrier.
Transfer the pie plate to a wire rack and let the crust cool completely for about 30 minutes; adding custard to a warm shell would trap steam and soften the base. Keep the oven at 375°F or 190°C. Spread the hazelnuts on the baking sheet and toast for 6 to 8 minutes, shaking once, until fragrant and lightly browned. Rub away loose skins with a clean towel, cool the nuts fully, and chop them coarsely for the topping.
Combine the milk and 120 ml heavy cream in a medium heavy-bottomed saucepan and heat over medium until steaming, with small bubbles around the edge. Meanwhile, whisk the sugar, cornstarch, yolks, and salt in a heatproof bowl until completely smooth and slightly lighter. Slowly stream about one-third of the hot dairy into the yolk mixture while whisking continuously. Return everything to the saucepan through a fine-mesh sieve, then cook over medium heat, whisking across the bottom and corners to prevent scorched or undercooked patches.
Continue cooking until the custard reaches a full boil and thick bubbles break at the surface, usually 3 to 5 minutes after it begins steaming. Once bubbling, whisk constantly for 1 full minute; the custard should be glossy and leave defined trails that slowly close. Remove the pan from the heat. Add the chopped chocolate, hazelnut paste, butter, and 5 ml vanilla, then let them stand for 1 minute. Whisk from the center outward until the filling is completely smooth, uniform, and free of visible chocolate pieces.
Pour the warm filling into the completely cooled pastry shell and spread it level with an offset spatula, taking care not to scrape any cooked residue from the saucepan into the pie. Press food-safe wrap directly against the surface to prevent a skin. Let the pie stand on a rack for 20 minutes, then refrigerate it on a level shelf for at least 5 hours. The center should feel firm under gentle pressure and should not ripple when the plate is moved before topping or slicing.
Place the cold 240 ml heavy cream, confectioners' sugar, and 2.5 ml vanilla in a chilled bowl. Whip at medium speed until soft peaks form, then continue briefly until the peaks hold their shape but still look smooth; stop before the cream becomes grainy. Remove the wrap from the chilled pie, spread or spoon the cream over the filling, and scatter with the toasted hazelnuts. For clean portions, cut with a thin knife warmed in hot water and wiped dry between slices. Keep the pie chilled until serving.