1. Yes, it will affect his future. Everytime he apply for a job, a school, he'll have to explain why he has this on his record. In a competitive application this might make a difference. College cares about why someone might be missing school.
2. Yes, even he is not convicted, he'll have to explain why he's charged. But a lawyer might be able to expunge the reocrd (if your son is not convicted) so that your son will not have to answer yes to the question "have you ever been charged".
3. the term is "truancy law" or broadly "education law". This might be conflict of interest, but Ask your school for lawyers they have dealt with, it is important to find one that has done this before. Interview several of them and pick the one you feel comfortable. This is not hard case, a top lawyer from out of town won't help you here, you need a local lawyer.
4. Lawyer usually is paid by the hour. I am not sure what is the rate in your area, but don't be surprised with $200/hr, with 40 hours to conclude a case. Never agree to pay in full in the beginning. Ask him/her to bill you as things progress. Bills should be in 1/10 hour increment, e.g. Discussion with DA, 0.5 hours. etc.