So me and my boyfriend were walking down this busy street in our town holding hands when this street preacher yelled "Look at the sinners, You will have to repent or face Hell for your unholy sin of homosexuality, but its not too late Christ forgives all even grave sinners like you"
It kinda upset both of us, we had done nothing against this idiot. Thankfully there was this stand from the local atheist group thing (that I am tempted to join now) on the side of the street (I think to counter them or something) and this girl asked us if we were both alright....
I would have looked him square in the eye and told him, "I don't believe in god, I don't believe in Jesus, and I don't believe in hell, regardless of how much you may insist otherwise. To accost us in a public place with your crap tells me you have all the diplomatic skills of Genghis Khan. Kindly fuck off."
Granted, that may not be YOUR style ... but it is mine, certainly for such a situation as the one you describe. These people think that they can get away with such confrontations without risk, and it's past time they learned that such is no longer the case. I've quoted this many times, and in this instance, it applies totally:
... in dealing with certain types you must step on their toes until they apologize.
-- Robert A. Heinlein