In a large bowl, combine 1 cup of the flour, sugar, yeast, and salt. Mix well.
Add melted butter, warm milk, eggs, vanilla extract, and lemon zest to the dry ingredients. Mix until well combined.
Gradually add the remaining flour and knead on a lightly floured surface until the dough is smooth and elastic, about 10 minutes.
Place the dough in a greased bowl, cover, and let rise in a warm place until doubled in size, about 1 hour.
Punch the dough down, then divide it into three equal parts. Roll each part into a long rope and braid them together.
Place the braided dough on a baking sheet lined with parchment paper, cover, and let it rise again for about 30 minutes.
Preheat the oven to 350°F (175°C). Brush the bread with beaten egg and bake for 25-30 minutes, or until golden brown and cooked through.
Allow the bread to cool on a wire rack before serving.