Cita: segun se, la normalizacion dice que solo los campos con los que se vayan a realizar operaciones matematicas deben ser tipo numero,
El que te dijo eso te mintió. Los tipos de campo se definen no por su uso sino por su dominio.
Si el dominio de un tipo de dato sólo serán números, no se deben usar VARCHAR para almacenarlos, sino numéricos (INT, DOUBLE, FLOAT, DECIMAL etc.), no solamente por cuestiones de eficiencia de espacio, sino por razones de optimización de consultas, ya que las operaciones realizadas con números tienden a tener mejor performance.
A esta última razón se agregan motivos de recursos de hardware: El almacenamiento de un valor numérico de orden 2^64 sólo requiere de 8 bytes como numérico, mientras en VARCHAR se necesitan 20 caracteres, por la simple razón de que los números se almacenan como binarios y no como cifras.
Finalmente: La normalización de bases de datos no dice, en realidad, absolutamente nada sobre la forma de almacenaje porque eso no es tema de normalización sino de implementación. Eso surge del análisis de los requerimientos del sistema.