А, собственно, с чего тут должна произойти ошибка? response - это обычная строка. Ты представляешь в PHP ассоциативный массив в виде JSON-строки, передаешь эту строку браузеру, браузер в функции success преобразует JSON-строку в javascript-объект и выдает success. То есть, передавая response, ты ничем не управляешь, ты просто передаешь response. Это обычный текст, который затем можно обработать каким угодно образом, не более того.
Если хочешь, чтобы скрипт на стороне браузера кинул ошибку при том условии, что свойство error объекта, полученного разбором JSON-строки response равно true - так и делай.
success: function (response) {
var data = $.parseJSON(response);
if (data.error)
throw new Error(data.message);
}