Amigo, te recomiendo q emples el Protocolo XON/XOFF, y de esta manera podras enviar datos del tamaño q desees.
solo debes crear un vector de un byte y llenarlo con los datos q desees, luego debes recorer el vector atraves de un for e ir enviando cada posicción del vector, esto seria una solucion mas sencilla, q lo q ya tienes planteado.
Tienes un error fatal, no inicialises la configuracion del puerto en el evento OnComm() debes hacerlo en Load del form.
Posiblemente se esto:
Propiedades RThreshold y SThreshold
La propiedades Rthreshold y Sthreshold establecen o devuelven el número de caracteres recibidos en los búferes de recepción y transmisión antes de producirse el evento OnComm. El evento OnComm se utiliza para supervisar y responder a los cambios en el estado de la comunicación. Si se establecen ambas propiedades a cero (0), se impide que se produzca el evento OnComm. Si se establece un valor distinto de 0 (1, por ejemplo), el evento OnComm se producirá cada vez que se reciba un único carácter en cualquiera de los dos búferes.
citame si aun sigue tu problema