Почему при клике на кнопку выводится NaN?
Потому что this в момент вызова события указывает на элемент button, а не на cls.
потому что handleClick теряет свой контекст. Решается так:

buton.addEventListener("click", ()=>cls.handleClick());

или так

buton.addEventListener("click", cls.handleClick.bind(cls));