I have a Mikrotik GRE tunnel with IPsec between two routers joining two LANs. I believe the this VPN may be dropping packets due to the wireless connection quality of the WAN link. Is there a better option than a GRE tunnel for internet connection sharing that will prevent this?
What are your exact expectations? Packet networks do drop packets for various reasons, and the applications either tolerate this (to a certain degree) or use retransmissions to guarantee that all data are delivered. With VPNs, the situation is slightly more complex as the encryption itself needs that not more than some N packets are lost in a continuous burst, but two retransmission mechanisms on top of each other are not a good idea. So the VPN itself should not use TCP as transport protocol. And while at first glance it may seem a good idea to use a VPN with TCP transport to carry UDP traffic such as RTP for VoIP, in fact it would only make sense if the retransmissions were very fast so that a lost RTP packet would be successfully retransmitted before the next one was sent. But that’s not the case with TCP timers, so with a limited playback buffer you lose some sections of the speech and with an unlimited buffer you replay everything but after an unacceptable delay.
So if the wireless link quality is so low that it causes issues with real time applications such as voice, no change of VPN protocol can help. A dead horse needs to be replaced, not redecorated.