In a saucepan, heat the water, butter, sugar, and salt until it reaches a rolling boil. Remove from heat, add the flour all at once, and stir vigorously until the mixture forms a smooth dough ball.
Return the saucepan to low heat and stir continuously for 2-3 minutes until the dough starts pulling away from the sides. Transfer to a mixing bowl and let it cool for 10 minutes.
Add the eggs one at a time, mixing well after each addition until fully incorporated. The dough should be smooth and glossy. Transfer to a piping bag fitted with a round or star tip.
Preheat the oven to 400°F (200°C). Line a baking sheet with parchment paper. Pipe 20 evenly sized mounds of dough, leaving space between them. Bake for 20 minutes at 400°F, then reduce the temperature to 350°F (180°C) and bake for another 20 minutes until golden brown. Let them cool completely before filling.
In a saucepan, heat 400 ml (1 ¾ cups) of milk with sugar and vanilla sugar until it reaches a simmer.
Whisk 100 ml (¼ cup) of milk in a separate bowl with the egg yolks and cornstarch until smooth and lump-free.
Gradually pour the hot milk into the egg mixture while whisking. Return everything to the saucepan and cook over low heat, stirring continuously, until thickened.
Transfer the cream to a bowl, cover with plastic wrap touching the surface, and let it cool completely. Once cooled, beat in the softened butter until smooth and creamy.
In a large bowl, beat the heavy cream until stiff peaks form. Optionally, add powdered sugar for extra sweetness.
Slice each cooled pastry in half. Pipe a generous layer of pastry cream onto the bottom half, followed by a layer of whipped cream. Place the top half of the pastry over the filling.
Dust with powdered sugar if desired and serve immediately.