I hate to say it, but some people are not as educated as you. Some people are not as globally, multidimensionally, or critically minded as you. Some people do not have the same moral guidelines driving their behaviors as you. If you continue to expect others to hold the same social principles as you, you will continue to be disappointed.
Instead of calling people names in return for the behavior which bothers you, try reaching a point of mutual understanding through thoughtful discourse. Because *words* are not the issue.
For example, the word "queer" flows out of a source-point steeped in exclusion. It served a cultural demand that homosexually-presenting people be othered, extracted from the regular borders of cultural behavior. Those being labeled then co-opted the word "queer" for their own liberation and empowerment, making it a word that brought strength, solidarity, and safety to those who use it as an identifier. They made a word meant to exclude others all about inclusion. A really cool moment for language, which continues to happen over centuries: human nature making the best of our systemically depressing linguistic system. But the word itself is not the issue.
The normalization of the word queer presents many problems: who polices the use of that word? Who determines whether it is safe for someone to identify as queer? If no one polices it, then opportunities for that word to become co-opted by individuals who haven't dealt with the realities of queerness in their lives arise: people who haven't had to face the issues of violence, hatred, and exclusion in the ways that exceptionally queer lives have experienced. We then have people operating with the invigorated spirit of queerness, without the pain and confusion. Those elements are important to the queer experience, whether you want them to be or not.
Language flows from the behaviors of a given community, and morphs as the cultural demands of language shift. The issue at hand is the state of the collective cultural heart, which is not going to be changed by calling others dirty names in return for their ignorance.
Ignorance simply states that one lacks knowledge. If you read someone for their ignorance and label them with a derogatory word, you are participating in the same hateful and ultimately unhelpful speech as those who used the word "queer" at the start. Instead of blaming them for their ignorance (which is something even the *middle* right does in regard to poverty and socialist ideas), try to give ignorant people the tools to rise out of ignorance and into enlightenment.
Remember how you talked with your dad and he said, "Why should the money I have worked hard for go to people who aren't going to work hard?" "People are poor because they don't try." That is the same complacent, lazy, and falsely superior language as one who calls another person ignorant as a punctuation to their argument.
Don't be an asshole. Be an advocate, be an ally, but don't be hurtful, especially not under the guise of it being on mine or any other queer person's behalf.
Shout it from the rooftops. But don't be an asshole.