Preheat your oven to 350°F (175°C).
In a saucepan, heat the milk until warm but not boiling. Gradually add the semolina and sugar, stirring constantly until thickened. Remove from heat and let it cool slightly.
In a mixing bowl, beat the eggs and vanilla extract. Slowly add the egg mixture to the semolina mixture, stirring constantly until well combined.
Brush a baking dish with melted butter. Layer half of the phyllo sheets, brushing each sheet with butter.
Pour the custard mixture over the phyllo layers. Cover with the remaining phyllo sheets, again brushing each sheet with butter.
Bake in the preheated oven for about 60 minutes, or until the top is golden brown.
While the Galaktoboureko is baking, prepare the syrup. In a saucepan, combine sugar, water, lemon juice, and zest. Bring to a boil, then simmer for 10 minutes.
Once the Galaktoboureko is done, remove it from the oven and immediately pour the hot syrup over it. Let it cool before serving.