I don't hate gays, I hate people that act over-the-top gay. It's like, dude, we get it, YOU'RE GAY, please stop
I agree, as long as it is truly an act. I hate people that act at all. There are plenty of gay (and straight, for that matter) people who simply are that way, but there are plenty more who make leaps and bounds just to fit the stereotype, which ironically fuels the intolerance.
Anyway, to answer the original question, I think that at heart people are afraid of what they don't understand. Religion gives people a "reason" to continue feeling this way. But deep down, it's fear. Fear fuels mankind's worst.
But back in the day, stigmas against homosexuality probably had roots in how it produced no children. You need to keep the generations and families and countries and races going - homosexuality is a hindrance to this, and therefore discouraged.