It's been a little while so I might be missing a change elsewhere, but to it looks like to implement the armor switch bonus I made the following change to cs_RollingSwitch:
This avoids giving the armor when the first weapon is being assigned but grants it on all subsequent assignments. There's also a corresponding change to the function responsible for instant switches though it's a bit more straightforward. Of course, being a hardcoded behavior, it was a bit more straightforward to implement versus making it a toggle.
Regarding the powerups I'd say there's no worries if you don't want to switch up how things are. I feel that ultimately how the powerups work right now can be fun, it's just that I've noticed they tend to stack really well with other weapons, make the weapon giving the powerup fairly decent on its own, and let you keep the loadout for a very long time gettings lots of bonus points. On reflection, I think another fix for this would simply be to heavily reduce the amount of ammo these special weapon give. The Klobb especially can stack with weapons like the phantom giving around 300 damage boosted shots to use on a weapon that already hits pretty hard. It might also be worth reducing the Klobb's damage bonus to 20% or 30%. 50% is quite significant, especially on automatics like the Phantom or RCP-90.
As for the magnum and other weapons, I think many of the current ammo values are close to where they should be if ammo conservation is to be an important part of the mode. I was mainly suggesting increasing them if the alternative powerup system was used.
That being said, under the current system I'd say these ammo counts should give good results:
weaponList={
"ubers":[(1,1),[[(1,1),"weapon_golden_pp7",0],[(2,2),"weapon_golden_gun",1],[(3,5),"weapon_grenade_launcher",3],[(6,8),"weapon_moonraker",0],[(8,10),"weapon_rcp90",0]],10],
"handguns":[(2,21),[[(1,1),"weapon_silver_pp7",7],[(2,3),"weapon_cmag",7],[(4,6),"weapon_dd44",24],[(7,9),"weapon_pp7",21]],9],
"shotguns":[(22,37),[[(1,1),"weapon_auto_shotgun",5],[(2,4),"weapon_shotgun",15]],4],
"autos":[(38,60),[[(1,4),"weapon_phantom",50],[(5,8),"weapon_zmg",32],[(8,11),"weapon_d5k",30]],11],
"rifles":[(61,82),[[(1,31),"weapon_sniper_rifle",16],[(32,45),"weapon_ar33",30],[(46,80),"weapon_kf7",60]],80],
"explosives":[(83,94),[[(1,1),"weapon_timedmine",7],[(2,2),"weapon_proximitymine",3],[(3,7),"weapon_remotemine",4],[(8,9),"weapon_grenade",9], [(10,14),"weapon_rocket_launcher",1]],14],
"specials":[(95,100),[[(1,4),"weapon_klobb",20],[(5,8),"weapon_knife",0],[(9,10),"weapon_knife_throwing",9],[(10,13),"weapon_pp7_silenced",7],[(14,15),"weapon_d5k_silenced",30]],15]}
The main changes being to reduce the ammo counts of some weapons like the D5K/KF7 as they actually do quite a bit of damage on headshot, and to heavily reduce special weapon ammo counts. Obviously you're free to make whatever changes to this you'd like, if you want to use it at all, but I figured my take on it will be useful.
Anyway, the switch time penalty on subsequent switches sounds interesting and I'm excited to see how it plays this Saturday!