Правильно ли при клике остановить таким образом Timeout?
Нет. 
Утрируя: скобочки после имени функции - это вызов этой функции прям сейчас, вон там где ты это написал. 
Обработчиком на клик в данном случае, соответственно, назначается то, что функция возвращает. А clearTimeout у нас не возвращает ничего. 
В итоге прямо в момент запуска кода cityRemoveTime будет остановлен, а на каждый клик у нас будет происходить ничего.
Нет. 
Утрируя: скобочки после имени функции - это вызов этой функции прям сейчас, вон там где ты это написал. 
Обработчиком на клик в данном случае, соответственно, назначается то, что функция возвращает. А clearTimeout у нас не возвращает ничего. 
В итоге прямо в момент запуска кода cityRemoveTime будет остановлен, а на каждый клик у нас будет происходить ничего.