I don't think he 50Hz rate is a requirement, particularly not a lower limit. I'd try just sending a pulse to each servo each time through loop(). If your servos don't like that you could use the BlinkWithoutDelay example to send pulses only every 20 ms.