I sleep on a satin pillowcase (they are so much smoother than regular cotton ones) and I've noticed that my hair isn't as dry in the morning if I just sleep on that. I think you could probably get one for less than $10 at a beauty supply store or somewhere Kmart too.
As my hair has gotten bigger/longer I started sleeping in a cap or hood of some sort as that helps with preventing tangles too but sometimes I'm just too lazy to do that, especially after a long day or night, so that's why the pillowcase is always there. I usually put some oil or conditioner on my ends too and that helps with minimizing knots too. HTH!
I usually wear a skull cap with spandex material. It doesn't take all the oil out my hair and scalp. Regardless of what u do to your hair you have activate your curls in morning. But I find cotton material make your hair dry
Last night I slept with a scarf on my hair. But I always sleep with a satin pillowcase. I don't like sleeping without something that's not cotton. I have a blanket that isn't cotton but it's not silk and I don't mind it touching my hair.
Your hair may be too long for a durag but there's hair bonnets if that's too much just sleep on a satin or silk pillowcase..sometimes I'm too lazy to get one so I sleep on a polyester or satin gown the ones girls wear to sleep in but I don't suggest that...if its long enough you could get it french braided