Как прервать выполнение цепочки промисов?
.then(onFulfilled, onRejected)вторая функция «ловит» ошибку и обрабатывает её, поэтому выполнение не прерывается.

Вариант А. просто уберите её. И ловите ошибки в .catch() в конце цепочки.

Вариант Б. возвращайте отвергнутый промис:// ...
, function(reason) {
    console.log(reason); // Ошибка! (Тут Скрипт должен прервать дальнейшее выполнение!)
    return Promise.reject(reason); // передаём пас с ошибкой дальше по цепочке
  })и всё равно добавьте в конце блок .catch()
При ошибке в любом случае цепочка прервется. И перейдет в блок catch, которого у вас нет