How to change node field label for some specific conditions?
This doesn't work for two reasons. First, you shouldn't change objects unless you want to save the changes  because they are shared across the entire Drupal application. Second, preprocess is for preparing variables printed in templates. Changing other variables has no effect.
So in hook_preprocess_node you can change only $variables['content'].
For most fields the label is stored in #title unless the field is built in a special way by callbacks:
$variables['content']['field_bar']['#title'] = 'Foo';

More straightforward, though, would be changing the label directly in hook_preprocess_field:
$variables['label'] = 'Foo';

which is then printed in the template as {{ label }}.

By the way, if you want to rewrite your code for field preprocess you find the node in this variable:
$node = $variables['element']['#object'];