Problema resolvido. Como a serragem sugeria, analisar o código-fonte do GRUB era um caminho a percorrer ( grub_multiboot_set_console function em grub-2.00/grub-core/loader/multiboot.c file).
O problema é que meu kernel é carregado pelo comando multiboot <filename> e o Linux é carregado (na maioria dos casos) pelo comando linux <filename> . A especificação de inicialização múltipla requer que as informações sobre o modo de vídeo preferido sejam fornecidas no cabeçalho de inicialização múltipla. Se essa informação não for fornecida, o GRUB retornará ao modo de texto antes de iniciar o kernel e ignora completamente a variável gfxpayload .