1. Doesn't the GPL prohibit un-GPL'ing the code? Or does dual licensing rely on having files with identical content but different licenses?
It relies on that.
2. I'm uncomfortable with making contributors assign copyright to me, just so I can dual-license. Would it be sufficient to get them to send me a form email stating that they agree their contribution will be dual-licensed?
I think so.
3. Any GPL-compatible commercial license templates I can look at? Especially those that are clear and short.
I'd love to see one of those also!
4. The GPL obviously doesn't prohibit commercial activity on top of the software, since Red Hat et. al. use services as a commercial model. Is there any OSI-certified license that would either encourage or compel commercial activity to have to use a different, commercial license?
No. That would breach clause 6 of the OSD (as I think it was already noted). That's why the SDC Conditions (www.softdevelcoop.org), a "commercial open source" licence, is not OSI-compliant. I quote the SDC Conditions because they try to cleanse a certain smell of parasitism of dual-licensing, namely that the dual-licensing model is practical only because the GPL is viral, as the previous note by Nick Moffitt indicates
"Typically dual-licensing with a proprietary license is seen as a buy-out. Recipients may buy out their responsibilities under the GPL, which they may be uncomfortable with. Since the OSD requires that the license may not restrict fields of endeavor, I believe that discomfort with copyleft is going to be your most compelling argument for your non-GPL license."
and because your questioning indicates convergence with the SDC philosophy, which is really simple: it's open source, but if it's used commercially, then the authors get a cut.
-- license-discuss archive is at http://crynwr.com/cgi-bin/ezmlm-cgi?3