Как переделать асинхронный код, в синхронный?
синхронным вы его можете сделать только если уберете все асинхронное (horseman) но тогда этот код будет бесполезен.
Вам нужна не синхронность а правильный порядок.
Используйте либо promise chaining, либо async/await в цикле вместо forEach (если phantomjs поддерживает это).
Пока не поздно, попробуй не юзать PhantomJs (он уже особо не поддерживается), есть https://github.com/GoogleChrome/puppeteer от гугла, покруче будет)