Warm the milk to about 110°F and stir in the sugar and yeast. Let sit 5–10 minutes until foamy.
In a stand mixer, combine flour and salt, then add the yeast mixture, egg, and softened butter. Mix until combined.
Knead on medium speed for 6–8 minutes until smooth and elastic. Shape into a ball, place in an oiled bowl, cover, and let rise 60–90 minutes until doubled.
While the dough rises, boil the cubed potatoes until fork-tender, about 15 minutes, then drain.
Caramelize the diced onion in 3 tablespoons of butter over medium-low heat for 15–20 minutes until deeply golden.
Mash the potatoes, then fold in the caramelized onion, farmer's cheese, dill, salt, and pepper while still warm.
Punch down the dough and divide into 12 equal pieces. Flatten each into a 4-inch disc.
Place 2–3 tablespoons of filling in the center of each disc, gather the edges, and pinch tightly closed at the top.
Place seam-side down on a parchment-lined baking sheet. Cover loosely and let rise 30 minutes.
Preheat oven to 375°F. Brush each bun generously with egg wash.
Bake for 22–25 minutes until golden brown and the bottoms sound hollow when tapped.
Cool on the pan for 5 minutes before transferring to a rack. Serve warm with sour cream.