I recently went back and looked at some clojure I wrote when I was learning.
Given:
(def x {:a 1 :b {:c 3}})
So for a case like this, where I wanted to increment {:c 3} and have the change persist in x I was doing code like this:
(let [val (:c (x :b))
updated (inc val)]
(set! x (assoc x :b (assoc (:b x) :c updated))))