Não há razão óbvia para fazer isso. As chaves são uma construção de agrupamento e os comandos dentro delas serão executados no mesmo ambiente que o restante do script.
Se fosse um parêntese comum, então teria sido um sub-shell (um ambiente separado do resto do script), mas nesse caso isso também não teria feito muita diferença.
Um possível motivo para isso é que ele permitiria ao autor redirecionar todas as saídas de qualquer comando dentro do { ... }
para algum caso específico, como em
{ ...some commands...; } >somefile
mas isso obviamente não é feito aqui.
com parênteses,
( ...some commands... )
o autor poderia definir opções de shell e criar variáveis locais que não afetam o restante do script.