@MANT There was a very similar thread on here quite a while ago but from a Mum. If anyone can find the link you may find it useful.
I am not clear on a couple of things, does the GF live with you or does she have her own home? How many nights is she staying over? If she has her own home, the poster I referred to made it clear the GF could only stay over x nights each week and in particular could not stay on a Sunday night.
You state she spends time in his room waiting for him. Can you clarify is he out of the house at uni and she is sat in his room? If so, it is reasonable to say she can only be in your home if he is there. Be reasonable, if he has popped out to the shops fine, but not hours on end.
Your DS is 20, if he was in halls or rented accommodation he would have to do his own washing, cleaning, buying food, making meals, washing up etc. It is not unreasonable to expect him to do some of this e.g. he does their washing, keeps his room tidy and possibly makes one or two evening meals for the family (you providing food is not unreasonable as he is a student) and does the washing up one or two nights.
WRT the holiday for next year. Once you are back home have a conversation with your DS and set out the behaviours you expect from him. Explain if there is not a consistent stepping up his GF will not be welcome on holiday next year, point out it’s you holiday too and him expecting you and your wife to wait on him is not acceptable.