NGUITools.AdjustDepth is able to adjust the depth of all widgets underneath the specified target object. So if you specify NGUITools.AdjustDepth(yourButtonGameObject, 1), it will adjust all depths by +1.
The depth should never change the behaviour like you're describing. Depth is only used for two things:
1. Draw order.
2. Event order
So if you had colliders on both the label and the button, the depth would determine which one gets the events. But freezing something in place? I'd have a closer look at the scripts you're using. If you're doing something that results in the button's position changing, then it would explain why it suddenly "freezes" in place if you have another animation on it.
For example -- if you're doing a TweenPosition on the button, and happen to have a UIButtonOffset script attached (which also uses TweenPosition under the hood).