Turns out it is possible to update attributes like uniforms. In my case, I was missing one all important line of code:
attributes.displacement.needsUpdate = true;
The line was omitted from the tutorial and upon adding it I get the exact behavior I was hoping for.