1. In a large bowl, dissolve yeast in warm milk. Add melted butter, 2 cups whole wheat flour, 1/2 cup sugar and cardamom. Stir in the remaining flour, 1/2 cup at a time, beating well after each addition. When the dough has pulled together, turn it out onto a lightly floured surface and knead until shiny and pliable. Lightly oil a large bowl, place the dough in the bowl and turn to coat with oil. Cover with a damp cloth and let rise in a warm place until doubled in volume, about 1 hour.
2. Divide the dough into twenty four equal pieces and form into rounds. Place the rounds on to lightly greased baking sheets. Cover the rolls with a damp cloth and let rise until doubled in volume, about 20 minutes. Meanwhile, preheat oven to 475 degrees F (245 degrees C).
3. Brush risen rolls with beaten egg. Bake in preheated oven for 8 to 10 minutes until nicely browned with pale sides. Cool completely on wire racks.
4. To make pastry cream: In a mixing bowl, whisk together the egg yolks, sugar, and cornstarch until well combined. Whisk in 2 tablespoons of milk. Place the remaining milk and the vanilla in a medium saucepan. Bring the milk to a boil and whisk it into the yolk mixture.
5. Pour the mixture into the saucepan and bring it to a boil over medium heat, whisking constantly. Remove from the heat and whisk in the butter. Line a baking sheet with plastic wrap and spread the pastry cream over the plastic to cool it as quickly as possible. Cover with plastic wrap and refrigerate it until cold. Place the cooled pastry cream into a pastry bag and fill the buns with cream.