Ok, versões antigas do GNU coreutils (antes do 7.5) não têm uma solução fácil (até onde eu sei), mas versões mais recentes (desde 7.5) possuem um comando stdbuf que você pode usar para forçar a divisão (ou qualquer outro programa coreutil) a imprimir imediatamente sua saída. No seu caso, você pode usar:
~/coreutils/bin/stdbuf -o0 ~/coreutils/bin/split --verbose -d -u -l 10000000 1>out & tail -f out
Isso será executado com o buffer de saída desabilitado.
Por favor, note que a opção -u (unbuffered) em split não afeta a impressão da mensagem, apenas os dados que ela está dividindo (parece mais lento se você desabilitar esse buffer).
Informações sobre stdbuf: link
Para uma alternativa ao usar versões mais antigas do coreutils, verifique esta solução usando o comando unbuffer do pacote expect (tcl): link