Besides the excellent suggestions about using shrinkage approaches. Quadratic penalization should also be considered (we have a case study on this in J Clinical Epidemiology, first author Moons). Other than that, data reduction or redundancy analysis (all masked to $Y$) can play an important role, e.g., combining variables that are hard to separate. Variable clustering and principle components are two of many data reduction methods. With the number of events available, the 15:1 rule would indicate that reduction is needed down to two factors (masked to $Y$).