I have used the elastic "garter" sheet holders to keep the fitted sheets in place.
You can find them just about anywhere that sells sheets.
No one sells (or if they do, you wouldn't want to pay the prices) sheets fitted to what you find in PUPs so you make do.
I recently acquired a sewing machine at Goodwill for another project and decided to try my skills (HA!) out on a stupid simple task with the straight sheets.
I folded the bottom end over about 8 inches and sewed the edges together along the sides. This made something of a pocket at the bottom of the sheet. I just tucked it under the mattress and we no longer have a top sheet that pulls out sometime in the middle of the night. We do use sleeping bags as blankets over us and should the cold overcome our heating abilities, we can turn them back into sleeping bags. The kids just sleep in sleeping bags at the other bunk end even though there is a fitted sheet on the mattress there.