Outras respostas se concentram na mecânica do recálculo e no papel das funções voláteis, mas acho que isso deixa de lado parte da essência da questão. Ele aborda as regras que foram empregadas, mas não tanto o "porquê". Vou me concentrar nisso.
Conceito de design
Deixe-me começar com um conceito de design e os blocos de construção das planilhas mais modernas. Há uma "divisão de responsabilidade". Funções são rotinas dedicadas que executam uma tarefa específica e fazem isso toda vez que são solicitadas. Além disso, o aplicativo de planilha controla quando solicitado.
As funções, por si só, não contêm lógica para escolher recalcular ou não recalcular. A natureza de todas as funções do Excel é executar algum tipo de operação sempre que acionada. Nenhuma função possui sua própria "memória" de seu valor atual ou um histórico de seus cálculos anteriores. Não há como saber se esta é a primeira vez que lhe pedem para fazer seu trabalho. Portanto, nenhuma função nativa tem a capacidade de executar apenas uma vez. Se qualquer função for recalculada, ela fará o que foi projetada e produzirá um novo valor.
O aplicativo de planilha contém alguma inteligência que permite economizar tempo ignorando recálculos desnecessários (conforme descrito na resposta de teylyn). O único momento em que o recálculo é ignorado é se o aplicativo souber que o valor da função não foi afetado pelas alterações na planilha que acionaram a necessidade de recalcular as coisas.
E se você precisar executar uma função uma vez e preservar seu valor? Tome o seu exemplo de produção de um número aleatório e depois o resultado não será alterado. Isso descreve a criação de constantes geradas aleatoriamente e você pode fazer isso com o Excel.
O Excel não pode saber como você deseja usar seus recursos; se você deseja continuar produzindo novos valores ou preservar o último conjunto. Cada opção é um caso de uso que o Excel suporta. O Excel acomoda os dois casos, fornecendo as ferramentas para calcular novos valores e as ferramentas para preservar valores antigos. Você pode construir o que quiser. Mas o usuário tem a responsabilidade de fazê-lo fazer o que deseja.
Função Lógica
Então, vamos olhar para a lógica do que a função faz. Será que faz sentido que a lógica do recálculo pule uma função aleatória porque seu valor não deve ser afetado por outras alterações na planilha?
A mudança ou não do valor de uma função após o recálculo depende de sua finalidade e em que ela se baseia. Um cálculo em valores constantes sempre produzirá o mesmo resultado. Uma operação baseada nos valores das células que não foram alteradas produzirá o mesmo resultado.
No entanto, algumas funções são projetadas com a intenção e o objetivo de produzir um resultado diferente a cada vez. Considere, por exemplo, funções baseadas no horário atual. Eles produzirão um novo resultado com base no tempo no recálculo. Você não pode ter uma função cujo objetivo seja produzir um valor com base no horário atual e não atualizar quando for recalculado.
O objetivo do controle de recálculo é sempre fazer com que tudo reflita o estado atual das coisas quando o recálculo é acionado. Esse critério não seria atendido se as funções baseadas no horário atual não fossem atualizadas.
As funções "aleatórias", como RANDBETWEEN, têm o objetivo de produzir um novo número aleatório quando recalculadas. É isso que eles pretendem fazer. Você pode argumentar que o recálculo pode ser ignorado porque o valor não deve ser afetado por outras coisas acontecendo na planilha.
Se esse fosse o comportamento padrão, você estaria atualizando a planilha, mas o valor aleatório permaneceria constante. Esse não é um comportamento muito aleatório. Isso suportaria um caso de uso, mas não o outro. Voltando ao conceito básico de design, ele é tratado como qualquer outra função. O comportamento padrão é fazer com que o Excel o recalcule. Se você deseja preservar o valor anterior para seu caso de uso, é sua responsabilidade fazer isso com as ferramentas disponíveis.