Hi @John Mclean ,
Here is update on your ask -
TTL at the container level can be done without touching document(s) but there is no way to update the TTL on an individual document(s) without updating it.
You could try look into Partial Document Update Preview. At minimum, it would simplify the converted code to little more than existing Touch() call. Also, I haven't dug myself enough to know if would also potentially affect RU cost and response time.
Thanks
Saurabh