As one of the contact centre agents I can shed some light on this. When a booking is in it's pre travel stage all payments regarding making changes to the booking (upgrades, date changes etc) do need to be paid for on the original card used with the card holders authority, the only time an exemption can be made is when the original card has been cancelled or has expired. This is purely so that BA is following PCI compliance guidelines, why that is part of the guidelines I have no idea! It does seem daft to me that a named passenger on the booking cannot make the change.