I am not sure why the connection is being closed on the cloud side; you may want to use wireshark or similar to see what is going on. I suspect you'll see a TCP RST. A cursory search online shows that the TCP connections will be dropped after 10 mins, but this is happening much sooner.
It would be interesting and helpful for others if we could resolve this.
Also, I really doubt it's related to async vs sync methods..its more likely intermittent and you just keep hitting it with TouchAsync.