I’m not sure if this is completely solved. I’m not doing anything within hooks to alter data, however, in any version of ACF passed 5.7.10, or 5.8.beta-3 will completely reorder fields when saving as acf-json; It’s very apparent when combined with version control.
My team has confirmed rolling back to ACF 5.7.10 or 5.8.beta-3 is the only solution to prevent future field updates to acf-json from reordering.