Men and boys should and are allowed to have long hair because it is their choice and preference. Some boys are even born with long hair because of genetic variation and differences. It is a natural part of the human body and should not be prohibited. Furthermore, there is nothing wrong with it and the choice is ultimately down to the individual regardless of culture or religion.
Men don't "have" to have short hair. Men have 100% control for their hair and can choose what form they want it as, It can be short, or they can grow it out. Just like women, they have the freedom to have short hair or long hair. So men don't HAVE to have short hair, they can have whatever hair length that suits them.