COMANDOS AT CON JAVA

Amigos tengo un problema que no logro entender, aparentemente está bien el código pero no me da los resultados que quiero!!!

Estoy trabajando en un proyecto con COMANDOS AT (modem usb, etc) y tengo las siguientes clases:

 

Ahora desde otra parte del proyecto llamo a las clases anteriores

 

Como pueden ver BorrarSMSdelModem() está arriba de enviar_SMS();

El resultado que me da, es que me BORRA el SMS de la memoria del modem, pero NO me envia el sms a pesar que me imprime el mensaje de . 

Si intercambio el código:

 

El Resultado es: Me envía el SMS sin problemas, pero NO me borra el SMS de la memoria del modem a pesar que me imprime el mensaje de:  

Porque puede ser??? un conflicto entre los try??? no sé que hacer, espero su valiosa ayuda!!!