Thank you everyone for taking the time to respond.
Our issue seems to be related to a clustered index on the field. We're moving away from the cursor/loop solution towards a more traditional update.
Still not sure why the update behaved differently inside the cursor than outside of it...
Thanks again!