Combine 1 cup flour, sugar, yeast, and salt in the bowl of a stand mixer.
Combine 1 cup milk and butter in a 2-quart saucepan over low heat; heat until very warm (120 to 130 degrees F (40 to 54 degrees C)), about 5 minutes.
Beat milk-butter mixture gradually into flour mixture on low speed. Increase speed to medium; beat for 2 minutes, stopping occasionally to scrape the bowl with a spatula. Beat in 1 cup flour and egg, occasionally scraping the bowl. Switch to the dough hook attachment; mix in remaining 2 cups flour until a soft dough forms.
Turn dough out on a lightly floured work surface. Knead until smooth and elastic, about 10 minutes. Shape into a ball. Transfer to a greased bowl. Turn over to coat top with grease. Cover and let rise in a warm place until doubled, about 1 hour.
Punch down dough and turn out on a lightly floured surface. Divide into 2 pieces. Place each piece in a separate bowl. Cover and refrigerate, 2 hours to overnight.
Combine cream cheese, confectioners' sugar, 1 egg, and lemon juice in the clean bowl of a stand mixer. Beat on low speed until evenly blended. Increase speed to medium; beat until fluffy, about 3 minutes.
Grease 2 baking sheets. Roll 1 piece of dough into a 12x15-inch rectangle. Transfer to a baking sheet. Repeat with remaining dough.
Spread cream cheese filling in a 4-inch strip down the center of each rectangle. Cut dough on both sides of the filling into 1-inch-wide strips. Fold strips alternately over the filling to create a braid. Cover braided dough and let rise in a warm, draft-free place until doubled, about 1 hour.
Preheat oven to 375 degrees F (190 degrees C). Brush tops of braids with 2 tablespoons milk.
Bake in the preheated oven until golden brown, about 20 minutes. Transfer to a wire rack to cool.