Snorlax does not learn hypnosis.
Without hacking, Kadabra cannot learn Hypnosis.
I think Gardevoir is a good Pokemon who learns Hypnosis at level 51
Drowzee and Hypno are top choices. but most psychic Pokemon know/can learn Hypnosis.
Munna and Sigilyph.
Any Pokemon that can learn a electric move
Its not a TM. Your Pokemon has to learn it. like Gastly :) (Gengar in lvl 100 with hypnosis is pwnage :p)
you can catch a ralts on route 102 and put an everstone on it, then it will learn hypnosis at level 41
See the related link below.
Only certain Pokemon can learn it but you can't find the TM
I don't know all of the Pokemon that can learn Headbutt, but I know that Cubone can learn it.
Munna, the psychic pig, and Musharma, the bigger psychic pig, both learn Hypnosis at quite low levels.
Electivire cannot learn Volt Tackle in Pokemon HeartGold. Only pichu, pikachu, and raichu can learn volt tackle.