when ur spectating u would be invisible and u would not be allowed to block arrows from shooting. btw there are some rules already on it. 1 of the most important rules is clicking respawn as fast as you can when u die. To avoid someone from breaking that rule, a timing system could be set up so that if u don't respawn in a certain time, u will be kicked out. however, if u don't want spectaters to be able to fly around, then u could probably build a glass "box" so that spectaters can see what's going on.

btw adventure mode = bad considering that u can break several blocks on adventure mode such as glass,redstone dust, buttons, etc.