Para fazer isso você precisa de uma solução que envolva push notification. É o servidor que notificará seu browser e não o browser que ficará de tempo em tempos buscando o servidor. Porém, é uma solução que não envolve apenas JavaScript, envolve em um overhaul do seu servidor.
Para saber mais sobre você pode verificar uma pergunta semelhante feita no stackoverflow. A resposta passa uma série de links que podem prepará-lo para entender mais o assunto:
https://stackoverflow.com/questions/9106516/push-notifications-from-server-to-user-with-php-javascript
obs: ficar executando um código a cada segundo não é exagero não? Se não quiser partir para uma solução de push notification aumente o tempo do longo pooling que você esta fazendo.
obs: se você quer fazer chat, pode usar websocket ou a biblioteca que esconde a complexidade do websocket e garante a compatibilidade dele entre navegadores, o Socket.io. Ela envolve a biblioteca no client e uma biblioteca no servidor específico da sua plataforma. Acredito que esse seja o caminho mais indicado.
Sucesso e bom estudo meu aluno.