Normalmente, o comportamento que você pede é o padrão. Comandos como less usam um recurso chamado altscreen para gravar em um buffer diferente enquanto são executados. Na saída, a tela anterior é restaurada e nenhuma das saídas menores é visível.
Este recurso depende do emulador de terminal que você está usando (xterm, dtterm, ...) e como você define a variável de ambiente TERM no shell. Tente echo $TERM
para verificar se não é mudo por exemplo.