It's currently (I believe..) the only way.
However, when is the booking and do you need those Avios for now ? You could wait for a significant time change or cancellation by BA... or disruption etc - and then cancel without fee. Not a dead cert, but certainly a possibility