Though this is an old question, I might be able to provide a suggestion.
If you are using a multi-threaded approach for sending and receiving, you must ensure there is exclusive access for each of these threads to the resource (in this case, your GSM Modem). So, make sure you close the connection to your serial port vice versa during RX/TX.
I can provide you more suggestions if you could post a code snippet.