In the bowl of a stand mixer fitted with the paddle attachment, combine the flour, yeast, and sugar. Mix on medium speed for 30 seconds. Add the egg, orange juice, milk, vanilla, and orange zest. Mix just until combined. Add the butter and salt, switch to the dough hook, and knead on low speed for 10 to 15 minutes, until smooth and elastic.
Transfer the dough to a lightly greased bowl. Cover and let rise at room temperature until doubled in size, 1½ to 2 hours, or refrigerate overnight.
To prepare the filling, stir together the butter, sugar, and orange zest in a bowl until smooth and creamy. Set aside.
On a floured surface, roll the dough into a rectangle about ½ cm thick. Spread the filling evenly over the dough, then sprinkle with the flour. Fold the dough into thirds like a letter, then roll it out again to the same thickness, dusting with flour as needed.
Slice into 16 even strips. Roll each into a spiral and arrange in a greased or parchment-lined 9x13-inch/23x33 cm baking dish, spacing them slightly apart. Alternatively, skip the folding step and roll directly after spreading the filling.
Cover and let rise again until puffy and nearly doubled, about 45 to 60 minutes.
Heat the oven to 340°F (170°C) with top and bottom heat (conventional setting). Bake for 25 to 30 minutes, or until the rolls are golden brown.
To make the glaze, whisk the butter and powdered sugar in a bowl until smooth. Add the cream cheese and orange juice and mix until creamy. Refrigerate until needed.
To make the syrup, combine the sugar and orange juice in a small saucepan and bring to a boil. Remove from the heat.
Let the orange yeast rolls cool for 5 to 10 minutes, then spread with glaze or brush with syrup while still warm.
Store in an airtight container at room temperature for up to 2 days.