Yes, BUT, they can not be on the same page. And you can have it random, one time Yahoo, and another time Google. Just don't have them both show up on the same page. Source: AdSense FAQ
You can try with a ad manager like http://www.openx.org/ that way you can test different sets of ads on the same page. However, you have to be very careful that yahoo and google ads don't mix. Should take some work, but can be done with openx.
Yes, you may do so, as long as two sets of ads have different ad formats and color schemes. Well, I never try to put them together, since Yahoo ads only accept US publishers.