Uma diferença é que Cmd + K limpa o buffer de rolagem, bem como a tela. Ctrl + L apenas limpa a tela, movendo efetivamente o que está nela "para cima" no buffer de rolagem.
Outra diferença é que o Ctrl + L é executado pelo processo executado dentro do Terminal. Para Por exemplo, o bash limpará a tela e redesenhará o prompt, incluindo qualquer comando inacabado existente. Outros programas podem não fazer nada ou atualizar a tela sem limpá-la.
O Cmd + K, por outro lado, é executado pelo próprio Terminal, independentemente do que está sendo executado a janela, por isso pode ocultar a saída do programa.
Existem dois atalhos (ou mais) porque você está interagindo com dois programas, Terminal e qualquer processo que esteja sendo executado dentro dele. Eu não diria que isso é típico do OS X. Pelo contrário, é uma ocorrência comum em qualquer ambiente de computação de várias camadas. Você teria que executar (somente) o DOS (sem qualquer TSR) para experimentar um ambiente onde todos os atalhos de teclado fossem interpretados por um único aplicativo. Mas como os dois atalhos neste caso fazem coisas diferentes, a sobreposição é realmente apenas superficial. Por exemplo, Cmd + we Cmd + q podem parecer fazer a mesma coisa para alguns usuários, mas na verdade, eles são diferentes. O mesmo vale para Ctrl + L e Cmd + K.