I've never heard anybody say happy holiday before. Is this supposed to be different than Happy holidays?
Yes. Happy holidays is used specifically around December to refer to the various holidays taking place then and to avoid excluding anyone's traditions. Other holidays are usually referred to by their name (happy Easter, happy Mother's Day, etc). In Russian though, it's quite common to just wish someone happy holiday without naming the holiday because it's assumed you would already know what day it is.
It is also very common to omit "поздравляю" and just say "С праздником!" Russians say it for all the holidays except maybe for birthdays which have their own phrase "С днём рождения!" (again, "поздравляю" is very often dropped).
Would "I wish you happy holidays" be a proper translation of this full sentence?
Have a good/happy holiday! would probably be the more native translation when the specific name of the holiday is not given. The Happy+X construction feels like a relatively closed set of expressions rather than a generalizable formula, at least in American English. I still cringe a bit when I hear Europeans saying "Happy weekend!"
Can someone please tell me what the words mean, by themselves ? Because this seems like a set expression.
Поздравляю is like I'm saying hello or i wish you... Not at all it doesn't mean: congratulation. I'm Polish though but in my language it means like that. I assume it is the same in Russian