Surely from the point of view of enjoying the best in-flight service etc, another option would be to fly direct with BA to Vancouver, and then hop on Air Canada for the short one hour flight to PDX?
Make sure you take in the Oregon Symphony whilst in Portland - excellent orchestra...