For the cake: Preheat the oven to 350 degrees F / 175 degrees C. Generously grease three 8-inch / 20cm cake pans, then line them with greased parchment paper.
In a food processor, break up the long strands of shredded coconut by pulsing for about 30 seconds.
In a stand mixer fitted with the paddle attachment, cream the butter on medium-high speed until creamy and smooth, about 1 minute.
Turn the mixer speed to medium; add the sugar, oil, vanilla, and coconut extract; and beat for about 5 minutes, until the mixture is light in color and about double in volume.
Turn the speed to medium-low and add the eggs and egg yolks, one at a time, mixing each until incorporated before adding the next. Scrape the bowl after each addition.
In a separate bowl, whisk together the flour, baking powder, and salt until well combined.
Add one-third of the flour mixture to the butter mixture and mix just until combined. Add half of the coconut milk, mixing until incorporated. Repeat with another one-third flour, the remaining coconut milk, and then finish with the final one-third flour, scraping the bowl and paddle after each addition. Fold in shredded coconut.
Pour the batter into the prepared pans and spread evening using a small offset spatula. Gently tap the pans on the counter several times to release excess air bubbles.
Bake until a tester comes out clean, about 35 minutes. Let the cakes cool completely before removing from the pans. Remove the parchment paper and place one cake layer on a serving plate.
For the coconut pastry cream: In a food processor, pulse the coconut flakes ten times to slightly break up the strands. Set aside.
In a medium saucepan over medium heat, combine the coconut milk, 1/4 cup (50g) of the sugar, salt, vanilla, and coconut extract and cook, stirring, nutil it simmers.
In a medium bowl, whisk together the cornstarch and remaining 1/4 cup (50g) sugar. Add the egg yolks and whisk into a smooth paste.
Whisk enough of the hot milk, a little at a time, into the egg mixture until it is warm to the touch. Once the eggs are tempered, pour the mixture back into the remaining milk in the pan.
Return the saucepan to medium-high heat and bring the mixture to a boil; continuously whisk for 3 minutes more or the pastry cream will separate once it cools. After 3 minutes, whisk in the butter and coconut flakes.
Pour the pastry cream into a shallow container and cover with plastic wrap, pressed directly onto the surface, to prevent a skin from forming.
In a large bowl, add enough ince cubes and cold water to create a bath for the container to sit in without the water breaching the sides.
Set the container in the ice bath or place in the freezer until chilled, about 15 minutes before using. Or transfer to an airtight container and store in the refrigerator for up to 3 days.
Stir the pastry cream to loosen, then mix in one-third of the whipped cream to lighten. Fold in the remaining whipped cream.
Using an offset spatula, spread half of the pastry cream over the cake; making sure not to go quite to the edge. Top with the next cake layer. Gently press down on the cake to make sure it is sitting snugly on the pastry cream. Spread with the remaining pastry cream and top with the final cake layer. If the pastry cream goes beyond the edge, clean it up with a metal decorating spatula. Make sure the layers are straight. Cover with plastic wrap and refrigerate for about 1 hour to to set the pastry cream.
For the fluffy Swiss meringue topping: In a medium saucepan over medium-low heat, bring 1 inch / 2.5 cm of water to a simmer.
In the bowl of a stand mixer, combine the egg whites, sugar and salt; place over the simmering water; and stir with a rubber spatula until the mixture is hot and all of the sugar has dissolved, about 5 minutes.
Remove the bowl form the heat and place onto the stand mixer fitted with the whisk attachment, then beat on high speed until very thick and glossy and stiff peaks form, about 5 minutes. If the meringue is not stiff enough, your spikes will slouch and lose the drama. Add the vanilla and mix well. Use immediately.
Assemble the rest of the cake: Reserve 1 cup / 60g of the meringue topping. Use a metal spatula to spread a thick layer of the reamining meringue evenly over the cake.
Take a blob—yes, a blob—of the reserved meringue between your fingers and press it against the meringue on the cake. Pull the blob away from the cake, it will break off in a wispy curl. The thicker the blob you lay down as a foundation on the cake, the bigger the curls will be. It may take a few times to get the hang of it, but then you'll be off and running. Plus, it's fun.
Once you have the cake fully set with the curls, hold a kitchen blowtorch about 3 inches / 7.5cm from the cake, so just the tip of the flame is hovering over the cake. Keep the torch moving so it doesn't burn the meringue. The tip of the curls will set fire, blow them out as you go. The burnt tips are a lovely contrast and add a wonderful flavor.
Serve the cake immediately or store in the refrigerator, covered, for up to 48 hours.