I have the same problem and have tried just about every configuration option imaginable. If page caching is disabled in W3TC, the form submission works fine. If page caching is enabled, the spinner doesn't stop. The contact form is in the footer and even if the page itself is not getting cached, the form submission still doesn't work. As noted above, the email does send, but I'm using an on_sent_ok setting to open a confirmation modal, which never shows.
If I use WP Super Cache, it works fine. If I use every other option in W3TC, it works fine. The problem is simply when page caching in W3TC is activated. I have tried deactivating all of the options on the page caching settings page, and I have added footer.php to the ignore list, all to no avail. Thanks for any insight you have on this.