Note: The german emperors didn't have any noticeable power at all in the middle ages (with some exceptions). They were elected, and most of them were just symbols of something that didn't exist.

I agree however that one of the causes certainly was the weak heirs that every dynasty has to cope with sometimes. A much better solution seems to be the Julian-Claudian one, namely adopting your heir rather than some Salic inheritance law, namely your oldest son being the heir.