I can follow you on your points, and I definitely haven't been patient when it comes to responses from the SIM808 module, but I didn't expect that I had to wait several seconds or even minutes for a response on a simple "AT" command to see if the module is responsive(with response type "OK"). What triggers me is that some parts of it are working, but outside of the SendMessage and ReceiveMessage methods, then it is not working reliably.
I will based on your inputs try to implement some kind of tracking of the serial communication to see if I can pinpoint the error further.