There have been a lot of interesting Pricing decisions by BA recently. Had clients return from DEN in First as cheaper than Premium – only full fare Premium left – yet discounted First (Business was cheaper again than Premium and slightly cheaper than F).
It will be down to yield management systems. It happens all the time so not at all unusual. Just it maybe the case that booking online doesn’t highlight potential for cheaper fares by upgrading (or paying very little extra) whereas using a GDS you can get a good idea straight away.