I know this is a rather odd question but is there anything used by snes9x core that I can temporarily dealloc when emulation is paused, and then reallocate without affecting the currently running game?
Probably not. The state of the game involves all of the memory used by it and where in the emulation cycle the game currently is. If there's a value in memory anywhere it's probably going to be used again, and there's no good way to know what isn't going to be needed any more. It's possible that there's a minimal audio buffer or something like that which could be dealloc'd without issue, but it'd be pretty minimal. You'd have to write the memory contents to storage before dropping it - which is pretty much what save states do anyways. If you really needed to, you might be able to finagle something that wrote a save state, and then resumed from state when you wanted to play again.
As for the framerate drops ... there may be something, but it's possible there isn't much. Sound stuttering in that instance is a result of the computer not emulating the hardware fast enough to fill the audio buffer. There's just not enough sound being made to play back without gaps. You could try increasing the buffer size and decreasing the output rate.