BA have enough trouble handling themselves so to handle anyone else would be pushing it a bit!
I imagine the reason is that it is a lot of extra hassle and if you lose a contract then you have a lot of excess resources that you then don't really need. It is not BA's main field of work at LHR.
At other Airports there may be agreements in place that limit access of third party handlers, hence why the national carrier does so much. At Heathrow this is not the case.