Porque no ordenas los datos al realizar la consulta a la base de datos, para eso existe el
ORDER BY de SQL.
Saludos.
PD: Te recomiendo que no uses varchar para guardar la fecha. Es mejor usar los tipos definidos en MySQL porque ganarás en rendimiento y además los datos siempre serán consistentes (no podrás meter fechas inválidas)