I found in the Debian forums that you can also use GRUB_GFXPAYLOAD_LINUX in /etc/default/grub. If use that instead of gfxpayload=keep the virtual consoles work perfectly. So maybe this is the proper way to set this setting. Thanks for your suggestion.