So it sounds interesting with a few caveats:
With some contracts, like courier contracts, I would want to charge extra if my creep got attacked. So it makes more sense that the client puts money in an some kind of escrow and then the contract can return data on how much get's paid out (or paid back to the client).
Additionally, if the escrow is changeable, then the duration of the contracts could be also. It would allow for potentially indefinite contracts as long as both client and contractor agree.
Contracts explicitly allow rental of cpu. With the use of public segments between the client and contractor, the client could offload their pathfinding or other processing only tasks to the contractor.
Also guaranteed processing should put contracts at the start of the loop rather than the end. Not only would this help guarantee enough cpu for the contract, but it might help player's code adjust to the cpu usage.
It's certainly an interesting idea, and one I wouldn't mind getting further thought.