I've never used a configuration like yours.
But probably, genereal solutions could help to you.
1- Yes. But the keyboard must supply General Midi (in order to use lots of MIDI files). And your soundcard must supply MIDI out.
2-Try to connect your keyboard's MIDI In with soundcard's MIDI out. And set the channels to MIDI out port (from cakewalk) you want to hear from your keyboard.
3- All The MIDI keyboards have an option called "Local". If you set this option to "Local Off" then your keyboard's synthesizer stops to respont your keyboards messages, but continues to send MIDI messages. This is what you need I think.
4- Did you have a look at cakewalk's HP ?, Synthzone ?
)