In a mixing bowl, whisk together the egg yolks and sugar until well combined and the mixture becomes pale yellow.
In a saucepan, heat the milk over medium heat until it just begins to simmer. Slowly pour the hot milk into the egg yolk mixture, whisking constantly.
Transfer the mixture back to the saucepan and cook over low heat, stirring constantly, until it thickens enough to coat the back of a spoon. Remove from heat and let it cool completely.
In a separate mixing bowl, whip the heavy cream and vanilla extract until stiff peaks form.
Gently fold the mascarpone cheese into the whipped cream until well combined.
Gradually fold the cooled egg yolk mixture into the mascarpone and whipped cream mixture until smooth and creamy.
In a shallow dish, combine the coffee and rum (if using). Dip each ladyfinger into the coffee mixture, soaking it for a few seconds on each side.
Arrange a layer of soaked ladyfingers in the bottom of a rectangular dish or individual serving glasses.
Spread a layer of the mascarpone mixture over the ladyfingers.
Repeat the layers, finishing with a layer of the mascarpone mixture on top.
Cover and refrigerate for at least 4 hours, or overnight, to allow the flavors to meld together.
Just before serving, dust the top with a generous amount of cocoa powder.
Slice, serve, and enjoy!