Rather than get bogged down in explaining this, we can put a stop to it by saying human hair does stop growing after a finite time...
Eye brows, pubes, leg hair.... Hair on your head just takes longer to reach the same point, and obviosly also longer in different individuals. Some extreme individuals may grow meters of the stuff, most will struggle to get it past their lower back.
The reason for this could be postulated to be due to the same reasons a peacock has a huge tail, and a lion has a mane. It forms part of a signal of an indivuals health and ability to reproduce.