For anyone having issues with overlapping music in your own maps, one workaround that seems to work every time is using a PlayMusic script set to the music "none" *prior to switching to the next level*. E.g. Trigger "none" just before players enter a LevelExitArea. You can trigger new music immediately upon entering the spawn point of the next level. Triggering "none" on the same map was still not guaranteed to work when starting a new song after "none" in the same map. I don't know why.
Despite some small awkward silence in some moments, this seems to prevent music overlap that happens randomly when trying to change music in one script chain, e.g. music1 --> none --> bossmusic; music1 --> bossmusic; etc.
Hopefully the small nuance of what I am trying to say makes sense.