If I am not mistaken, this hook is fired twice. Once during the AJAX validation phase and then again when the post is submitted. To confirm this you could output the value of DOING_AJAX and see if it is different for each request.
Welcome to the Advanced Custom Fields community forum.
Browse through ideas, snippets of code, questions and answers between fellow ACF users