This is something I was thinking about when I had the unpleasant surprise to discover that host audio frequency and cpu cycles never want to match exactly (because of rounding, and because perfect oscillators do not exist, and because emulation speed may vary by a few microseconds here and there). Ultimately I dropped the idea, and instead of dropping frames I implemented an automatic frequency-adjusting mechanism that slightly changes zBoy’s output sampling rate so it’s able to lock in exactly with the host audio frequency. The current version is really awesome BTW, will post a video soon - progress is huge compared to r137.
Anyway, all this to say that your idea is valid, and should be easy to implement in FManga’s port. There is one drawback however: I already experimented with frame skipping in zBoy many years ago, and I noticed that it is very easy to break a game, visually. For example the on-screen character moves on the screen, but doesn’t appear to move his legs any more. Or fires bullets that are… invisible (because they are drawn every odd frame or so). GB games heavily rely on an accurate frame rate for playability, so before even thinking about skip-frame stuff I’d rather see how much performance is missing. Perhaps after the many (Pokitto-specific) optimizations @FManga did already, sound will be a breeze to support. Or perhaps it will be simpler to drop a sound channel instead - most games sound very good already with only the two square channels emulated, the wave and noise channels are rather used for minor musical effects.
A huge saver would be also to limit the frequency of zBoy’s output - simply moving from 44.1 kHz stereo to 16 kHz mono would make things many times faster (at the cost of audio quality, of course).