У ACF есть метод https://www.advancedcustomfields.com/resources/upd... для обновления. Можно использовать его или открыть плагин и посмотреть как он работает. Или посмотреть в базе как называются поля возможно '_content' или может значение сохраняется как сериализованный массив.
1. Сделать все секции через блоки gutenberg. У них есть возможность визуально менять местами, удалять, добавлять в нужное место.
2. Можно через стили. Например так: на странице настроек добавить поле order и его добавлять каждому блоку в style="order: 2; "
а родительскому