Preheat your Belgian waffle iron to a medium-high browning setting. Preheat your oven to 200°F (93°C) and set a wire rack over a baking sheet to keep finished waffles warm and crispy.
Carefully separate all 3 eggs, placing the yolks in one large mixing bowl and the whites in a second clean, completely dry large mixing bowl. Ensure no yolk gets into the whites, as even a small amount will prevent proper whipping.
Add the flour, sugar, baking powder, and salt to the bowl with the egg yolks and whisk briefly to distribute the dry ingredients.
Pour the whole milk, melted butter, and vanilla extract into the bowl with the dry ingredients and egg yolks. Whisk until just combined with a few small lumps remaining; do not overmix.
Using a hand mixer or stand mixer on high speed, beat the egg whites until stiff peaks form, about 2 to 3 minutes. The whites should hold a firm, upright peak when the beaters are lifted.
Gently fold one-third of the whipped egg whites into the batter to loosen it, then fold in the remaining whites using slow, sweeping strokes until no large white streaks remain. Do not overmix; a few small streaks are fine.
Lightly spray both plates of the preheated waffle iron with cooking spray, or brush with melted butter. This helps produce a crispier exterior and prevents sticking.
Pour approximately 3/4 to 1 cup of batter onto the center of the lower waffle iron plate, close the lid firmly, and cook for 4 to 5 minutes until deeply golden and steam has significantly slowed. Do not open the lid early.
Carefully remove the finished waffle and place it on the wire rack over the baking sheet, then transfer to the 200°F oven to keep warm and crispy. Repeat for remaining waffles, re-greasing the iron as needed.
Remove waffles from the oven and serve immediately with your choice of toppings such as butter, maple syrup, fresh berries, and whipped cream.