I think you'll find a couple of slight errors in your recollections;
1) The shoulder-charge at Darren Gough was probably a little more blatant than you describe. Mahanama didn't just get in the way, he deliberately dropped the shoulder and pushed Gough out of the way. The slow-mo replays were really quite damning.
2) Gough's retaliation was to walk past Mahanama and pretend to head-butt him. He didn't touch him at all.
3) Alec Stewart, on the other hand, walked past Mahanama at the end of the over and essentially nudged him in the shoulder as he walked past. It 'looked' quite deliberate but, as someone who's obviously far more adept at doing this sort of thing and making it look at accident, there was a slight element of doubt with Stewart. It was pretty funny to watch Mahanama then protest at the umpire. After the earlier incident, if I was Stewart, I would have been tempted to lay him out personally.
But yeah that was one of the nastiest games I've seen. It overshadowed an awesome knock earlier in the day by Graeme Hick and an even better one chasing 300+ by Jayawardene. After that, notwithstanding Jayawardene's great innings, I thought that SL didn't deserve to win the match.
And as always, You Tube provides;
http://www.youtube.com/watch?v=20Msqs-iQt4
Watch and be appalled!
(now let's see one person try to defend Mahanama's actions which, in light of his pontificating about fair play and sportsmanship post-retirement, are somewhat indefensible)