I know that with return tickets it is the age at commencement of the first flight sector that counts. So if he is 1 day before 12 years on the day of the first flight he should be able to be on a child's fare. I think this is an IATA rule - so I would call again - provide his DOB and just ask for the child fare - without going into the details of his birthday during the trip. They should be able to ticket it without question.