To live and die by the sword
IO--I'm not sure the situation is unique to cargo carriers. In fact I think it's pretty typical at most small companies with no union contract.
The fact of the matter is the company makes the rules (in the form of an employee handbook) and then chooses whether or not to follow them. And if they don't who's gonna make sure they do?
As for myself, I have both benefited and been 'screwed' by an upgrade out of seniority.
The problem in my opinion is when the company preaches that they "respect" one's seniority and then do something which contradicts that statement.
The company I work for now only claims to consider one's seniority when upgrading. This policy is much stronger now after a couple 'incidents' with 'questionable' captains.
As for your friends situation I think it's a little shortsighted on the part of the company to not upgrade a perfectly qualified FO. Eventually, as soon as he can, he'll get frustrated and leave. Sure they'll hire another FO but it's my understanding that training costs can really hurt the bottom line of a small company.
Good luck.