For the JCL you show, you CANNOT use DD * unless your data set is FB with LRECL 80. Put the SMTP commands in a dataset with the same LRECL as your datasetname and change DD * to DD DSN=smtpdatasetname.
Is there any limit for record length of the input file?
The JCL Reference manual says
Restrictions when coding LRECL: If you code LRECL with the * parameter, you cannot submit a data set to JES3 with a record length greater than 80 bytes.
You cannot use the TSO/E SUBMIT command to submit a data set to JES2 or JES3 with a record length greater than 80 bytes.
although if you use IEBGENER to copy JCL to the internal reader, that JCL may use an LRECL greater than 80 (just no DD *). The actual limit will vary by site since (for JES3 at least) it is based on the spool buffer block size.
The other limit is that SMTP does not support lines longer than 998 bytes (which is 1000 bytes when the CR/LF is added to the end of the ASCII line). This is documented in the appropriate RFC (2822).