1) You can catch wild pokemon (and power them up to) your trainer level+2.
2) No, until you are level 30, you will be unable to power up your weather boosted mon past 31, at which point they can be level 32.
3) Yes, a level 30 trainer can catch level 30 (highest non weatherboosted) and level 35 (highest boosted) mon. They will not be able to power up the weatherboosted until level 34.
All identical pokemon caught by level 30+ trainers are identical (that is: if we both caught the same Bulbasaur from the same spawn in game, they would have identical stats and level).