Prep the pan and oven: Heat the oven to 350°F (177°C). Grease a 9x13-inch baking pan and line the bottom with parchment for easy slicing.
Mix dry ingredients: In a small bowl, whisk together flour, baking powder, and salt.
Set aside.
Beat the egg whites: In a clean bowl, beat egg whites on medium-high until soft peaks form. Gradually add half the sugar (about 6 tablespoons), beating to glossy, medium-stiff peaks.
Cream yolks and sugar: In another bowl, beat egg yolks with the remaining sugar until pale and thick, 2–3 minutes. Mix in the vanilla and whole milk.
Combine the batters: Gently fold the dry ingredients into the yolk mixture until just combined.
Fold in the whipped egg whites in 2–3 additions, keeping as much air as possible. The batter should be light and airy.
Bake: Pour the batter into the prepared pan, smooth the top, and bake for 22–28 minutes, or until the center springs back lightly and a toothpick comes out clean.
Cool slightly: Let the cake cool in the pan for 15–20 minutes. Poke holes all over the surface with a skewer or fork; go deep but not all the way to the bottom.
Make the milk mixture: In a pitcher, whisk together evaporated milk, condensed milk, whole milk, vanilla, and optional rum.
It should be pourable and silky.
Soak the cake: Slowly pour the milk mixture evenly over the warm cake, letting it absorb as you go. Take your time; it may pool, but the cake will drink it up.
Chill: Cover the pan and refrigerate at least 4 hours, preferably overnight, to let the flavors meld and the texture set.
Whip the topping: Beat cold heavy cream with powdered sugar and vanilla to medium peaks. Spread over the chilled cake in soft swoops.
Garnish and serve: Dust with a light sprinkle of cinnamon or add berries on top.
Slice and serve cold. Wipe the knife between cuts for clean slices.