I'm on board with the rat being too large as well, looks like a small rat with a 2015 ball pyton, and that would definitely be pushing it by quite a bit. Although from your description, it had the rat much further down it's tract before going back into it's main enclosure, and threw it back up, partially processed, with the skull getting stuck while coming back up. It could regurgitate just because of excess mass and being unable to work it through. But most likely causes of regurge as far as I know are being too cool, or being heavily stressed. When cool, they can't digest properly, and instead of the rat going bad inside them, they just give up and throw it up. When stressed, a snake will rapidly regurge it's last meal so that it's not hindered in trying to escape the stressor(predator in nature).