Я не уверен, что такое пакет 'timer', однако я бы посоветовал поместить ваш интервал в его собственную переменную внутри CDM, если это не сработает, вам следует попробовать с ванильным setInterval. что-то вроде этого:
this.timer = setInterval(() => {
this.setState({
timer:this.state.timer - 1
});
}, 1000);
Кроме того, не забудьте в handleClose и componentWillUnmount очистить ваш интервал.
clearInterval(this.timer);