I am of the opinion that there are two ways that the question can be looked at. Personal ethics, I think, are different than the ethics of a nation. This is something that must be taken into account when questioning the ethics of decisions surrounding national security; it most certainly must be taken into account when considering the Zimmerman telegram.
From a personal standpoint, this decision is unquestionably unethical. Letting America know the contents of the Zimmerman telegram would have saved American lives, and potentially shortened the length of the war. Although it could be argued that more lives might have been lost if Germany knew that the code had been broken, I vastly disagree. Creating a new and equally strong code for their messages would have taken Germany a long period of time, because creating codes that function and are very strong is not an entirely simple process. Even if Germany became aware that their code had been broken, with the advantage given to both America and Britain, the war may have been won before the new code was invented. It is completely unethical for someone to break a code with the intention of shortening the war, and then not use the broken code to save as many lives as possible.
At the other end of this issue is the standpoint of national ethicality. It is my opinion that a nations ethics are typically focused first and foremost selfishly, on the survival of that specific nation. It is quite possible that Admiral Hall believed that telling the Americans about the contents of the Zimmerman telegram would jeopardize the very survival of his nation, in which case he simply obeyed his national ethics, which told him that survival came first. In following this duty to his country he also follows another part of national ethicality, that the homeland must come first.
With these two sides to keep in mind, it is impossible for me to conclude that one is more correct than the other. Personally, it is unethical. Nationally, it seems it may have been quite ethical. In the end, this is a murky issue. However, in the tumultuous and interconnected times we live in today, this will be an issue I think we will revisit very soon.