I personally think a 2-3 second invulnerability would help preventing spawnkilling from being attractive.
It would also make defending flags near to spawn easier.
i have following idea:
1.When player spawn, he have no shield
2.If player dies 1sec after respawn or shield end, it get first time 50ms shield, every next death will double shield time (so 100,200,400ms).
3.If he doesn't die for 1sec after shield end, his bonus shield is disabled.
This would work great for speed servers. With respawn time decreasing should work also on pubs. And it won't make flags near spawns much harder to cap, will just make spawning harder with every wave.