Restricted open-shell versus unrestricted methods for open shell systems
To be more precise, it's not so much that restricted open-shell calculations are unaffected by spin-contamination as that you are forcing them to give back the multiplicity you want.

Broadly speaking, closed-shell methods, restricted open-shell methods and constrained unrestricted open-shell methods all give correct spin multiplicities, but that's because all of them assume from the beginning which is the correct multiplicity and force it into the calculation - there is always a restriction in place. For closed-shell methods, it is that the orbitals occupied by both spin populations are the same; for restricted open-shell methods, the same applies to all but the excess spin electrons from the larger spin population. But more recent developments point to restricting multiplicity after the fact - by adjusting orbital population to minimise spin contamination. There are a couple of methods to do that, but they start from an unrestricted calculation (much faster, as you mention), and then force the population in a way that minimises spin contamination - either by forcing orthogonality constraints between the $\alpha$ and $\beta$ determinants, or by parametrising spin contamination in a way that allows it to be fitted to the expected total multiplicity by constraining occupation. This retains the computational advantage and simpler mathematical implementation of unrestricted methods but makes sure that the multiplicity of the model system reflects the multiplicity of the modelled system with generally very small additional computational effort.

I'd suggest that this is going to be an active area of research that will see increased use in the next few years.