A bit of unreasonableness on all parts IMO.
Your husband really needs to stop waiting up for him, that's just silly and is treating your son like a child. Indeed, it's facilitating him STAYING a child. Your DH "likes to see that [DS is] ok and has everything, especially if we haven't seen anything of him all weekend." Seriously, if your 20 year old can't do that for himself by now then it's high time he learned.
You say "We want him to try and be responsible" - well, stop bailing him out financially and start bawling him out when he disturbs your sleep by forgetting his keys. He says he's an adult, treat him as such - no bailouts, and consideration for others expected.
"Our son wants to move home in May, and I am dreading it because he will just carry on as he is now, putting his social life before everything. When I mentioned all this causing problems he replied that he is 20 and not a kid anymore so if his friends stay out late then why can't he?"
OK, so he wants to move home. That doesn't mean that you have to let him, and certainly not on HIS terms. This is your home, he claims says he isn't a kid, so as an adult he can either pull his weight of find somewhere else. Perhaps he and his friends can share? And I really do suggest floating that idea to him - if he and they want to live a particular way that's fine, but they can pay for it themselves, not sponge off their parents. Under no circumstances should he be living rent-free come May. You need to make that clear. Very clear.
"He has stayed here the last couple of Sunday nights and is supposed to get up Monday early, in order to go to Uni, but because he has stayed out so late ( after 1.30am) he stays in bed here until lunchtime, telling us lessons are cancelled or something simillar. "
Again, you need to step up a bit here. Tell him you will not be lied to. Maybe suggest he shouldn't doss stay at yours'on Sunday any more as it is obviously interfering with his studies. Make it clear that if he isn't going to actually go to Uni, then you expect him to leave and get a job. And yes, tell him he's being childish.
"We don't ask anything of him, be it rent, jobs, etc and always send him back to Uni with plenty of food, so are we being unreasonable?"
Yes, you are being unreasonable, but not for the reasons you might think. You should be asking him for rent. You should be insisting he works to fund himself. You should be letting him decide what's his financial priority, whether to eat or socialise. These will help him to actually grow up, rather than find it far too easy to stay an adolescent. He needs to grow up, and you and your husband need to step back and let him.