Just as a bit of extra info. The only thing I did is writing a few functions that uses the vanilla 0ad garrison functionality.
This issue by itself has nothing to do with the code, but with the garrison system as a whole.
If I were to remove all my garrison code, play the faction myself and garrison the units manually in the Hydrophant, the issue will remain the same.
I am not expecting a fix to this anytime soon and also don't expect you to fix this for Hyrule Conquest specifically.
However, I am almost 100% sure that this problem also exist in the vanilla game. Therefore, it would benefit 0ad in general if someone from the dev team would look into this problem at some point in time.