1) ACF form head must appear before any other page output, before ‘get_header()’. Using the hook you are using the html is already started before ‘acf_form_head()’ is called.
2) In order for the ACF fields to submit they must appear inside of the `<form></form>’ tags of the other form. I can’t tell by looking at your code if this is the case or not.