в опенкарт три вида регистрации - регистрация аккаунта, регистрация для покупки, регистрация для покупки якобы без регистрации. Первые две заводят аккаунт, последняя - не заводит. Но все три имет одинаковые поля. За них отвечают шаблоны - .tpl файлы (register.tpl и guest.tpl). Первый отвечает за регистрацию аккаунта, втоой - за две другие регистации. Надеюсь, понятно?
Поля, которые отвечают за "Регион/Область" - не содержат в себе &zone_id=<?php echo $zone_id; ?>'); в самом конце файла. Т.е. при запуске регистрации сайт запрашивает информацию из БД согласно этой строке, а получает в ответ только название страны, без региона. Добавление (&zone_id=<?php echo $zone_id; ?>');) делает возможным активацию поля "Регион/Область".
Рекомендую сделать бэкап файла register.tpl и заменить его не дефолтный от более свежей версии. Если не поможет - прописывать вручную в эту строку.
$('#payment-address select[name=zone_id]').load('index.php?route=checkout/guest/zone&country_id=<?php echo $country_id; ?>&zone_id=<?php echo $zone_id; ?>');
Касательно синтаксической ошибки - проверьте кодировку в файлах, отвечающих за регистрацию. И в БД загляните через PHPMYAdmin