In a large bowl, whisk together the milk, sugar, and yeast.
Cover with a kitchen towel and let stand for 15 minutes.
Add the flour, salt, and oil and stir well to combine. Knead until the dough comes together.
Then, knead for another 10-15 minutes until a smooth, elastic dough forms.
Divide dough into 2 equal balls. Lightly brush two bowls with oil and place your doughs in each. Cover with plastic wrap and rest in a warm place for 90 minutes, until nearly doubled in size.
Preheat oven to 400°F. Line a large baking sheet with parchment paper.
In a small bowl, mix the cheeses with lemon zest, garlic, and a pinch of salt until smooth.
Place dough balls on a lightly floured surface and shape into two long ovals, about 12-14" long.
Pipe or place a thin ring of cheese filling on the inside edge of each dough oval. Crimp the edge of the dough over the cheese, forming two points at each end.
Spread the remaining cheese mixture equally in the middle of each dough and lightly press down.
Cover doughs with a kitchen towel and rest 15-30 minutes. Uncover and bake for 20 to 25 minutes, until lightly golden brown.
Make a tablespoon-sized well in the center of each khachapuri and carefully place 1 egg yolk into each.
Bake again for 1 to 5 minutes until yolk begins to set. Remove from oven and place a slice of butter on top of each dough. Slice and serve.