I stop associating with him after I tell him, at least once (and depending on how long and the deep the friendship is, maybe several times), that I find that word offensive and that if he wants to be friends with me, he needs to stop using it (and better yet, change his attitude).
I think you're proving my point, though. You hate racists. That's fine, but let's say your best friend from childhood is a racist. Do you stop associating with him before or after he says “nigger” in your presence?
I think there is absolutely no evidence to support the idea that Lily was "looking for a reason to dump him," and it looks rather more like she was looking for a reason to stay friends with him, and increasingly finding it hard to do so.
That's my point; Lily was already looking for a reason to dump him. Should he have said it (at any point, to any one, for any reason?) No. Do I think she was justified in cutting ties with him? Yes. Not BECAUSE he called her Mudblood, though, but because he was heading on a path she could not follow. And I still maintain that had she given him an ultimatum, he may have changed his ways.
Wow, that's quite a mischaracterization of my position. I certainly don't think, "If the parents don't care for the child why should I?" I have a great deal of sympathy for the young Snape, and for any child who grows up in an abusive, unloving home, and I realize all too well how hard that makes it for someone to grow up to be an emotionally healthy person. However, having lousy parents and a miserable childhood is never an excuse to abuse other people in turn.
Part of what you're claiming he needs to be "redeemed" for is that he was never properly cared for by parents who obviously never wanted him and had no business being together in the first place. This kind of "well if the parents don't care for the child why should I" mentality makes me crazy and is brutally unfair to the child.