The reasons why Western systems often don't recoup even operating expenses, let alone capital costs, from fares are because transit is a public service with public externalities. Drivers on the road contribute to pollution and congestion, especially relevant in dense areas like London. Some level of subsidy is appropriate to account for the positive externalities of discouraging these negative outcomes while still encouraging regional mobility.
This is not to say TfL is as efficient as it could be; there is a well-documented capital costs crisis in the Anglosphere, particularly when it comes to transit. The issues here are more complex, though, than vote buying from an allegedly "socialist" mayor.