Dave
It seems to me that the best option is Policy Based Routing to take traffic that comes in on a GRE tunnel and send it out the interface to the firewall.
I am not sure what problem you had before when you tried it. But I believe the PBR would work for you to accomplish what you need.
HTH
Rick
HTH
Rick