A demo feels extreme for this. All you need to do is call the LoadBGM command before you need the music - at least a few seconds before! It can be when you enter the previous room or something, that's fine! It can run in the background while something else is going on! Just don't call the PlayBGM command until you've let it load. And... don't use Parallel or Auto events for this. There is a "Common Event..." command, which will run everything in a common event just once.
In fact, do you really even need a common event for this?