It's very tedious, and you'll need to be able to learn how to reverse engineer the sound engine. You can do this with a memory viewer that is built into an emulator. Open the games NSF file and in the emulator and see if you can find pointers in the memory viewer while a song is playing, chances are, it represents the location of some of the music data for that song in rom. Then compare what you find in the NSF file to what you find in the rom file in a hex editor. After that, you'll have to determine how different elements are represented in hex ( pitch, volume, repeat functions, timbre, etc.). Then edit the data. It is a lot of work, especially the first time around.
But even before doing that you'll need to know the principles of hexidecimal and pointers, and hopefully have some kind of music background. Not sure about the expansion sound though, sounds like a whole different ballpark.