Well now thats thinking afar! I like it xD.
Anyway, i thinks its more possible than you think.But not that possible without big changes. I dont know if you know binary, but i think the values for the B.Flag work by bits. Thats the only reason for the double battle work for everybattle. You set the first bit to 1 (like ASM, to declare a routine THUMB instead of ARM) and the other bits are setup to whatever the battle type was. But now there's a problem. How are we going to generate wild pokemon in both sides (the two players). And even if we sucessefuly did that, i think we would control 1 of our pokemon and the wild pokemon or something like that.