How to handle watermark.low

It is certainly not normal for the cluster health to go yellow just because it hit the low watermark, so I think there are other things at work that you haven't described. The cluster allocation explain API is the recommended way to determine why there are unassigned shards.

Yes, that is normal behaviour and is described in the docs to which I linked earlier. Elasticsearch doesn't move shards around simply because some nodes are over the low watermark.