Bring 2½ cups of whole milk and ½ cup of heavy cream to a simmer in a medium saucepan over medium heat.
In a bowl, whisk 1 egg, 2 egg yolks, ¾ cup of sugar, and 4½ tablespoons of cornstarch. Whisk in some of the hot milk, a few spoonfuls at a time, then pour the mixture into the saucepan.
Cook over medium-low heat without boiling for 5-8 minutes, until it coats the back of a spoon. Off the heat, stir in 4 tablespoons of butter, 3 teaspoons of vanilla extract, and ½ teaspoon of salt.
Strain through a fine-mesh sieve into a container. Cover with plastic wrap and refrigerate for at least 1 hour.
In a 9in / 23cm square pan, layer a third of 1 box of vanilla wafers, half of 4 large sliced bananas, and half the pudding. Repeat, then top with the remaining wafers. Refrigerate for 4-8 hours.