I'm probably going too far, but the Argentinian writer Borges had a short story which portrayed Judas as the key Christian sacrifice. (I don't think Borges invented this, I think it's an idea that's been played with for centuries.) The idea is that someone has to commit evil, and then be hated by the world forever. It's hard to sign up for that kind of role. But if you love humanity, and if you know that the task of betrayal must be done, then you step up. Snape did it. Borges (for the sake of a story) said that Judas did it as well.
I don't mean to imply that there is any theological validity to this.
Anti-heroes are fascinating.
I dunno. I think the best excuse that can be suggested for Judas is that he was trying to force God's hand by making Jesus fight -- and in so doing he made the same error that Moses, Abraham, Jacob, and other OT characters made: putting his own agenda ahead of God's, and getting in trouble for it. But I think Judas' essential nature was more base than that.
I don't think Judas "signed up" for the role of betrayal, knowing what would happen. Rather, I think his own persona put him into a position where his betrayal was inevitable. That God used it to make lemonade speaks to the power of God, not any sacrifice on Judas' part. I think Judas was the underhanded thief that John portrayed him to be, and that his reasons for betrayal were probably very complex -- he may not even have understood them. Judas did, I think, love Jesus, as witness his remorse he realized what he'd done. But I think he betrayed Jesus because he was consumed by whatever other motives were at work in him.
Snape's situation is the same as the "base Judas." His essential nature is nasty and twisted. He didn't "sign up" to be hated -- he was hate-able from the get-go, and it consumed him.
But he did have that one redeeming feature (his undying love for Lily)... and he knew real remorse for putting her in danger, not to mention contributing to her death. Note that he wanted Harry to understand why he had done as he did. He was asking for forgiveness, and got it.