Preheat an oven to 350 degrees F (175 degrees C). Put cupcake liners in cupcake pans.
Beat the eggs until combined; stir in the melted butter. Add the water, pudding mix, and yellow cake mix, stirring well to combine. The batter will be very thick. Divide the batter into cupcake pans.
Bake until the cupcakes spring back when pressed lightly with a finger or a tester comes out clean, about 15 minutes. Cool completely on wire racks.
To make the filling, combine the room-temperature butter, cream cheese, and confectioners' sugar. Beat until smooth. Stir in the whipped topping and vanilla extract.
When the cakes are cool, cut a wedge from the top of the cupcakes, enlarge the hole a bit and fill it with filling almost to the top. Then cut a slice off the bottom of the piece removed and place it on top of the filling so it fits flush. Frost with your favorite cream cheese frosting if desired.