One thing to remember is you have at least two other ways of storing values. Each worker has global memory which persists between invocations (local, atomic), and you have access to the Cache API (per-data center, ephemeral).
By combining those with KV to do global coordination on a more course time scale, I think you could.