Kind of old post and maybe you have found a solution already.
One way to simplify this is with Automator.
Service receives selected text,
drag action "Speak Text" to build worklow
select Voice (for example: Ryan Speaking)
Repeat with different voices.
(The Services List can be edited/cleaned up with Service Scrubber Application and partly under System Preferences > Keyboard > Keyboard Shortcuts > Services)
Now that you have two or more Voices under the Services Menu, you can go to:
System Preferences > Keyboard > Keyboard Shortcuts > Application Shortcuts
and create a new Shortcut for each voice.
So far, it works like this on my machine (OS 10.6.8):
Default System Voice: Ryan (Infovox) Shortcut Selected in Speech Pref to Control+S.
This starts and stops English text.
The German voice I have assigned Control+Y (Yannick voice from Lion OS).
Control+Y starts German voice for German selected text; which can be stopped by clicking the main start/stop shortcut twice, here Control+S+S. The reason for twice is because pressing it once starts the English voice over the German voice.
That's the best I could come up so far. Make sure the shortcuts don't conflict with other shortcuts. You will notice that the additional shortcut allows you to start several voice threads, talking over each other plus the default system voice, which drives up processor activity, but no problem if one remembers to stop the speaking by double-executing of the shortcut for the default voice.
Not sure if this works system-wide, but works in my browsers, Mail, and the BookReader app I'm using.
I have noticed that when activating a secondary text-to-speech voice via the Automator Service the Automator Runner process drives up processor activity to above 100% with fans speeding up. Not sure if there is a solution to this.