達する connotes "to rise", so it means more likely "to run up to". Thus, there is no problem with 氷は温度が0度に達すると溶ける or 水は温度が100度に達すると沸騰する, but it's not appropriate there. I would use に/まで下がる.
水温 is usually not talking about water's nature in general. It's for the temperature of water of something, e.g., 池の水温.
水が is indeed redundant in the first one.