I feel doubly qualified to answer your question, because I am both a Christian and a teacher.
Religious intolerance leads to fear and hatred and contempt for people from other religions. None of these things helps a learning environment. The school has a duty and a responsibility to foster and maintain a positive learning environment, and to remove obstacles to it.
Your friend's T-shirt might have said "Jesus Freak", but the real message he wished to convey is "I am a Fundamentalist Christian". Your friend could have been picked on by non-fundamentalist kids, or he might have gotten into arguments with kids from other religions--or he might have even started stuff himself.
None of that crap has any place in a school.
Kids are at school to learn Algebra and American History. The should study the civil war--not create a new intramural one.
Your friend does not have the right to wear anything he wants. Does he think an employer would put up with inappropriate attire in the face of a clear rule to the contrary?
Should he follow the dress code? Of course he should! It is reasonable, and there for a reason.
There is no constitutional right to express your religion in all circumstances. You cannot go into a mosque and ask if they are saved, neither can Muslims disrupt a Christian church service.
No I would not fight the case in court. I would hope that judges have more important things to do, and the wait lists for court times are bad enough as it is.