Harsher penalties for the freight hauliers when their trains break down? Would be an incentive to maintain them in fit for purpose order.
So punitive penalties would solve the issue? As Pacerpilot correctly points out, train failures are hardly a freight specific problem. If you're going to impose harsher penalties then it needs to apply across the board.
Double heading. I'm pretty sure the cost benefits would outweigh the potential savings in times of failure. Two engines full of fuel, twice the engine hours, wear and tear etc. And what happens when it's a failure caused not by the locomotive, but by one of the wagons? A severe wheel flat, broken coupling, brake fault etc etc etc. Double heading won't do much good then.
Better signalling regulation? There is a certain signal box in Crewe with a huge sign on the panel saying 'NO early runners!'. Regardless of time or day you get held to time. Where is the sense in that when it comes to working a heavy freight over the Marches? If your 20/30/40 minutes early, let it run and don't hold up what's behind you.
More powerful locomotives or lighter trains? Massive cost implications for both. Capital outlay for new engines and loss of profit/revenue by losing a few wagons. I don't know the figures but I'd guess that by the time wages, fuel, access charges, running costs etc are taken out of the equation there an only be a few wagons actually making a profit on a laden freight?
Perhaps a standby engine is the answer but as someone pointed out, it would have to be paid for by all the FOCs (and possible the TOCs as well if it is capable of rescuing failed passenger services) AND have a working arrangement where all crews signed the traction. Not an insurmountable problem but one I can't see happening sadly.