I have a similar problem controlling Battery. I like to use Battery's sample/cell library and fx which are very good but Guru sends the same note numbers out on every engine and I can't figure out a way to change that, so the 16 pads of engines 2 – 8 trigger the same cell in Battery's matrix as engine 1. I thought channel 10 was the general drum map split across the 8 engines but I find Guru's midi impementation very confusing as it's so vast. I changed Battery's channel from omni to 1 thru to 16 and no difference. I tried using Midi-ox and Midi-yoke but that just seemed to complicate matters further. Shame really, because Guru is the nuts for sequencing and I love it, just wish I could combine it better with Battery. This is thru FL which is my main daw and the issue could well be with FL which only lets you specify a port number, and not a midi channel in the receiving vst.
I'm using M-Audio Axiom 25 on Pro Tools 7.4 cs2.... some things work great, like the 'scenes' for example. I just wish I could easily assign a parameter on the fly without worrying about the MIDI channel repercussions. PT8 has improved MIDI, but once everything is working I fear an upgrade.
Redspark - it sounds like FL is doing some re-channelizing of the incoming Guru midi. Ableton Live suffers the same problem. Maybe you can setup separate midi tracks to only listen to a certain channel (eg. 2) and then pass that through to Battery (still on channel 2). This is the workaround for Live, but I'm not familiar with FL so I can't say how you'd go about it.
powerbeat1 - Midi Learn won't come back to Guru, it's too huge a structural change. Unfortunately ProTools does the same midi re-channelizing. It won't pass through all incoming midi channels, instead it forces them to a certain channel (whichever you have selected in the Instrument or IO section). Again you'd need multiple midi or instrument channels, all going to different midi channels in Guru.