For the record, I don't believe that homosexuality is inherently sinful. It can be expressed in sinful ways, as can heterosexuality, but I do not believe that committed, loving same-sex relationships are sinful.
That said, I accept that you think homosexuality is sinful. I'm guessing there are things that I believe are sinful that you do not. That's fine.
My question is, when you have struggled with a sin, has being told over and over that you are sinning ever made you change? Has anyone who has a problem with gluttony ever stopped eating so much because people tell them all the time that they are fat and sinful? Has anyone who has a problem with spending too much ever stopped spending so much because people tell them all the time that they are irresponsible and selfish? Has anyone who has a problem with pornography ever stopped because people tell them all the time that it is wrong and sinful?
I don't think so. I know that, when I need to make a change in my behavior, being nagged about it either does nothing or makes it worse.
If you ask non-Christians about Christians, a surprising number of them know one thing: Christians really don't like gay people. They think being gay is a really bad sin. And, for many people, that's about it. Obviously, the message that some Christians think homosexuality is really sinful is out there. It's out there all over the place. So, if people's behavior isn't changing, it is NOT because they haven't heard what some Christians are saying. They have. So we have to conclude that either they are unable to change, in which case the message is moot, or, if they are capable of changing, the way to support that change is not by repeating over and over that homosexuality is a sin. Because, as you said, it's NOT changing people's behavior (gay people are still about 3% of the population, a number which is pretty steady across times and cultures for which we have data), despite the fact that we hear more about how sinful homosexuality is than anything else.
It's not working. All it is doing is alienating people, and driving them away from Christianity, and causing a lot of pain and hurt and hate (and the hate is on both sides) where, as Christians, we should want love. So why not change the tactic, because the tactic of telling gay people they are living in sin is clearly not working. If anything, being constantly told that your behavior is bad and wrong and sinful (and it doesn't matter if one person only tells you once, because it's a message that gay people get constantly, everywhere they turn) only causes more problems. You tell someone who struggles with overeating that they are gluttonous and sinful, and there's a really good chance they are going to overeat more, because that is how they deal with pain and you just hurt them. You tell someone who spends too much money that they are selfish and irresponsible and sinful, and there's a really good chance they are going to go spend some money, because that is how they deal with pain and you just hurt them. If you honestly believe that homosexuality is a sinful behavior, then I think by the same token people should realize that by telling people how they are immoral and sinful, you are only setting them up for further problems.