When alerter sends email via alertscript (custom media type, script), it pass destination address, subject and body as commandline arguments.
Total length of commandline limited to MAX_STRING_LEN=2048. When exceeded (for example, if item has big value such as web-page content) it's stripped and error ocured: "sh: Syntax error: Unterminated quoted string". I'm not sure it's documented behavior.
It will be good if commandline will be unlimited (allocated with malloc()) or message body pass via stdin (not as argument) or call alerter via exec() and not using "sh -c".