Maybe this is a bug that’s recently cropped up on front end forms, but I tend not to think that because you say it works fine when you remove this functions.
The only thing that I can think of now is that the call to wp_update_post() is triggering hooks that are somehow causing this issue.
Have you tried opening a support ticket http://support.advancedcustomfields.com/new-ticket/