You're right, what McLean did was a red card. If Pearson was facing him and he slammed his arm/elbow into Pearson at the same height he would have been sent off for sure. A yellow for Pearson was right as well. The ref always evens it up in these situations. If he didn't then 5 minutes later Pearson would have tried to get his own back.
Pearson seems to do what he did regularly. Tackle someone after the whistle has gone, pretending he doesn't know play has been stopped. That's what casued McClean to react. Yellow for Pearson was right but should've been red for McClean.