countdown возвращает объект с разными свойствами в тч со свойством value, которое при случае когда дата "от" больше даты "до" будет отрицательным. Значит нужно добавить проверку на это значение.
Примерно так:
const standart = moment().tz("Europe/Moscow");
const nowDay = moment(standart, 'YYYY-MM-DD HH:mm');
const eventDay = moment('2023-05-21 02:05', 'YYYY-MM-DD HH:mm');
const countDown = () => {
const timers = moment(nowDay, 'YYYY-MM-DD HH:mm')
.countdown(eventDay, "YYYY-MM-DD HH:mm");
console.log(timers.value)
if(interval && timers.value <= 0) {
clearInterval(interval)
}
console.log(timers.toString())
}
const interval = setInterval(countDown, 1000);
Под себя адаптируйте этот код. Ну и конечно от momentjs и компашки нужно избавиться, но это уже отдельная легаси история.