i love your empathy for severus! it is true - another reviewer said the same thing - he never really cheated on harry, physically. he kept his deal, and helped tonks and remus a lot.
and of course you are right - he has a reason for his bad behaviour - he has been through a lot!
but harry is still young, and i think when you are young you are more likely to hurt the ones you love, out of self defense.