There is CL-STM. I haven't tried it, though, and know little about it.
If you do find a good STM library, you'll want a functional collections library to go with it. This is for the same reason that Clojure uses functional collections: you don't want to have to go outside the STM framework to update collection-valued slots of objects. Permit me to suggest FSet:
http://common-lisp.net/project/fset/