I would generally agree with the views about contract law above.
Contract Law generally seeks to put the wronged party in the place they would have been had the original contract been fulfilled, assuming they (the wronged party) try to mitigate losses where possible.
BA's talk of a 'suspended ticket' seems erroneous to me. Suspended implies to me something that can be reactivated. This was clearly not the case and to all intents and purposes it was cancelled with no notice (or no real notice) and the OP left to fend for himself. The OP still has no proper explanation despite trying many times and has been left high and dry. Those of you who complain about BA's terrible IT and hopeless customer service might have some sympathy here.
I am with those who say this is a simple breach of contract law and nothing wildly complex or difficult. Nor do I see any real defence for BA. They had the monies, have provided absolutely no explanation and have basically done nothing at all except give the OP a lot of flannel and run-around.