Currently a TLS handshake needs at least 2 round trips for the full handshake or one round trip for resuming a previously established session. This means there is currently always round trip overhead with TLS which can heavily impact the connection setup if you have a large round trip time, as it seems to be in your case.
With the new TLS 1.3 this overhead will be greatly reduced up to a 0-RTT handshake if resuming a session. Currently TLS 1.3 is still not fully standardized yet (will be hopefully this year) and even after it is standardized it will probably take several years before it is supported by the majority of client and servers. But, if you need a 0-RTT protocol now and have full control over client and server, then you might start using TLS 1.3 already in your own environment. Even if it is not fully standardized yet it is probably better than designing your own protocol.
For more details see An overview of TLS 1.3 and Q&A which describes both TLS 1.2 handshakes and TLS 1.3 handshakes.