Preheat the oven to 350°F (175°C) and grease a 9x13-inch baking dish.
In a saucepan, heat the milk until simmering.
In a bowl, whisk together semolina flour and sugar.
Gradually add the semolina mixture to the simmering milk, whisking constantly to avoid lumps. Cook for 8-10 minutes until thickened.
In a separate bowl, beat eggs and vanilla extract together. Slowly pour the beaten eggs into the semolina mixture, whisking continuously. Stir in lemon zest. Set aside to cool.
Layer half of the phyllo pastry sheets in the baking dish, brushing each sheet with melted butter.
Spread the cooled custard evenly over the layered phyllo pastry.
Layer the remaining phyllo pastry sheets on top, brushing each sheet with butter.
Score the top layer of phyllo into diamond or square shapes.
Bake for 50-60 minutes, or until golden brown and crisp.
While the Galaktoboureko bakes, prepare the sugar syrup. In a saucepan, combine water, sugar, lemon juice, and a cinnamon stick. Boil, then simmer for 5 minutes. Remove the cinnamon stick.
Once baked, remove the Galaktoboureko from the oven and let it cool for a few minutes.
Pour the warm sugar syrup over the Galaktoboureko, allowing it to soak in.
Let the dessert cool completely before serving.