This normally happens because BGP sets the ttl to 1 by default, and your tunnel is inheriting the raw path TTL. Set the TTL on your tunnel device explicitally (how to do this will depend entirely on the tunnel device you are using, so check its documentation for more details)
Another solution is to enable ebgp-multihop on both BGP speakers, but I'm not sure this is a 'good' solution. Setting the TTL seems like the right thing to do here.
Where $dev is your device name.
So far its working for one of my tunnels, just have to wait and see if it works for the other
2 pages link to BGPNotes: