El número de caracteres lo puedes controlar con la propiedad MaxLength del TEdit, y ara que te acepte el #13 pues basta que lo añadas al conjunto:
Código Delphi
[-]
if not(key in ['0'..'9', '.', ',', #8, #9, #13]) then
key:=#0;
Recuerda, sin embargo, que esto no impedirá que alguien pegue desde el portapapeles, texto que no corresponda al formato.
// Saludos