We used this recipe from Food & Wine Magazine, but instead of cooking a jam filling, we used two different jams - Strawberry Fig Preserves and Satsuma Jelly.
CREAM CHEESE FILLING
Make the dough: Whisk 1 cup flour, granulated sugar, and yeast in a large bowl. Add warm milk, and whisk to combine. Set aside until small bubbles begin to appear on the surface, about 5 minutes.
Whisk together melted butter, egg yolks, and salt in a separate bowl.
Stir butter mixture into yeast mixture using a rubber spatula or wooden spoon. Stir in remaining 2 cups of flour, 1 cup at a time.
After the second cup is added and it becomes too difficult to stir, tip the shaggy dough out onto a lightly floured countertop, and begin kneading by hand until smooth and springy, 3 to 4 minutes. The dough should be very tacky and a little greasy, but not sticky. If it does stick to the surface, dust with more flour, using as little as possible.
Transfer dough to a large bowl and cover with plastic wrap. Place bowl in a warm spot until doubled in size, 1 hour to 1 hour and 30 minutes.
Make the streusel topping: Stir together flour, sugar, butter, and salt in a small bowl until crumbly. Set aside to let butter solidify. Before using, stir again to create fine crumbs.
Make the cream cheese filling: Beat cream cheese, powdered sugar, egg yolk, and lemon zest in a large bowl with an electric mixer until smooth, about 1 minute.
Punch down the risen dough and divide it into 12 equal pieces (about 2 1/3 ounces each). Roll dough pieces against work surface with cupped hands to make smooth balls. Transfer dough balls to a parchment paper–lined baking sheet, and let rise, covered with a damp towel, until doubled in size, 30 to 45 minutes.
Make the kolaches: Preheat oven to 375°F. Use your fingertips to form 2-inch-wide wells in the center of each dough ball. Whisk egg yolk and milk in a small bowl. Brush outer edges and sides of dough with egg wash.
Spread 1 tablespoon cream cheese filling in each well. Make a smaller well in the center of the cream cheese, and top each with a dollop of your favorite jam. Sprinkle with streusel topping.
Bake in preheated oven until edges are light golden brown, about 20 minutes.