Andrés,
Dinos cuál quieres que sea el corte en días para añadir un mes más. ¿Es 20 días? Por otra parte, imagino que el cómputo lo haces por meses de 30 días. Eso es lo que tú estás haciendo y me parece bien, pero confírmanoslo. El método consistiría en restar los días entre las fechas, dividir por 30 y eso contarlo como meses, y si el resto de esa división es 20 o mayor de 20 sumar un mes más. Pero dime si es eso lo que quieres. Eso, por ej., haría que un niño que ha nacido el 1 de febrero no tuviera un año hasta el 2 de marzo... ¿Te vale algo así?
Mira a ver si esta consulta te ofrece los resultados que buscas:
Cita: select (FLOOR(datediff(curdate(),fecha_nacimiento)/30)+IF((datediff(curdate(),fecha_nacimiento)%30)>= 20,1,0)) meses from talla_para_la_edad