Got it ... at least in my case.
Is by any chance the "debug" mode enabled for page cache (or others?) If yes, then that's it.
I observed the Ajax JSON return value and, to my horror, I noticed that after the JSON object returned for WPCF7 there was a nasty HTML comment added by W3TC with debug information (I had debug enabled).
This is actually a (fairly nasty) bug in W3TC. It should not add debug information for application/json content type (actually no other types except html and friends).