I understand that "have been" is a form of the linking verb "to be", so it can only take a predicate nominative. But saying "It should've been us" sounds better.
According to the rules, it should be "It should have been we." because, as you noted correctly, "to be" is a linking verb. This has been discussed in many forums everywhere on the internet. Just google "it is I vs. it is me".
However, "It should have been we" sounds wrong to the vast majority of people, so using that form is a bad idea. If you do it, that will only distract your readers, and you don't want that.
You can either ignore the rule and say "It should have been us" (nobody will mind, and frankly, that form is eventually going to become the new right, because that's how languages evolve); or you can use a completely different wording. For example, turn "It should have been we/us who were awarded the prize." into "We should have been awarded the prize." or "We were the only ones worthy of the prize.", and your problem is solved.
My personal advice: if you can say the same thing with fewer words, do it!