Buns get stale mostly because of moisture evaporation, and there are several tried-and-true ways to fix this! First, after baking, let them cool not in the open air, but under a towel or in a closed container - this will slow down drying. Second, once the buns are completely cool, put them in an airtight bag or container with a lid, preferably with a piece of bread or an apple inside - they'll release moisture. Temperature isn't that critical (room temperature or a cool place works), but the main thing is to avoid contact with air.
As for the dough, try adding a bit more fat (butter or sour cream) and make sure the dough has enough moisture - don't make it too stiff. Some bakers add honey or a little milk instead of water to their dough, which helps baked goods stay soft longer. Also check that you're mixing in the chocolate filling well - if it's dry, try melted chocolate or mix it with butter.
If the buns are already getting stale, you can revive them a bit! Wrap the hardened bun in a damp cloth, pop it in the microwave for 10-15 seconds - it'll soften temporarily. Or just crumble it up and use it in recipes (cocoa puddings, panna cotta), no point throwing it away!