Заставить ajax работать синхронно?
тут варианта 2 - написать свой js движок, в котором ajax будет синхронный, продвинуть этот движок во все браузеры, параллельно поправить стандарты ActionScript. До даже тогда ваш говнокод не заработает, потому что надо хотя бы какое-то значение возвращать из функции checkTranslit.
Ну или можно просто запомнить одно простое правило - если нужно выполнить какое-то действие после завершения ajax запроса, то это действие должно выполнятся в success колбэке.
Перепишите код//валидатор
checkTranslit($('#translit').val());
    

//запрос 
function checkTranslit(translit){
    $.ajax({
        url: 'http://site.com/scripts/checkTranslit.php',
        data: {'translit': translit},
        type: 'POST',
        dataType: 'json',
        async: false,
        success: function(data){
          if (!answer.result) {
            errorArray.push("translit");//кладем поле в массив с ошибками
            console.log('value is: ' + $('#translit').val());
            console.log('result is: ' + answer.result);
          } 
        },
        error: function(error){
           console.log('error is: ' + error + '\n');  
            return error;
        }
    });

}
Если у вас dataType: json, зачем вы какие-то манипуляции с ними в колбэках проводите? Скрипт на сервере должен возвращать json, а в колбэке уже будет десерализованный объект
Не надо делать синхронные запросы. Это плохая практика, потому что js - событийный однопоточный язык программирования, и он очень не рад когда ему подсовывают что-то блокирующее. Не надо так.
Читайте про каллбэк функции и так далее.