Prepare the Choux Pastry: Combine water, butter, sugar, and salt in a saucepan and bring to a gentle boil. Stir in the flour until a smooth dough forms, then cool slightly before gradually mixing in the eggs until glossy.
Pipe the Eclair Shells: Transfer the dough to a piping bag and pipe 12 evenly sized strips onto a parchment-lined baking sheet. Leave space between them and gently smooth any uneven edges with a damp fingertip.
Bake the Pastry: Bake until the eclair shells are puffed, golden brown, and firm to the touch. Transfer them to a wire rack and allow them to cool completely before filling.
Make the Vanilla Custard: Whisk the egg yolks, sugar, and cornstarch until smooth, then gradually whisk in the warm milk. Cook over medium heat until thick and silky, then stir in vanilla and butter.
Chill the Custard: Transfer the custard to a bowl and press plastic wrap directly against the surface to prevent a skin from forming. Refrigerate for about 30 minutes or until completely chilled.
Fill the Eclairs: Make two or three small openings along the bottom of each cooled eclair. Pipe the chilled custard into the shells, taking care not to overfill them.
Make the Chocolate Topping: Place the chopped chocolate in a bowl and pour hot heavy cream over it. Let it sit briefly, then stir until smooth before mixing in the butter.
Finish and Serve: Dip the tops of the filled eclairs into the chocolate topping or spread it evenly with a small spatula. Let the chocolate set slightly before serving.