One of the reasons for this, among others, is the merging of 2nd (-ēre) and 3rd (-ĕre) Latin conjugations into the 2nd Italian conjugation. As you may know, 2nd Latin conjugation has the long "e", while 3rd has the short "e". You can still notice this in Italian when you compare "crédere" (notice the accent) and "tenére".
Notice how "credere" is a 3rd conjugation verb in Latin (with short "e", sounding just like its Italian counterpart), and its perfect form is "credidi" (1st person singular). "Credidit" and "crediderunt" are, in turn, 3rd person singular and plural. You can see, (especially from "crediderunt", and following the common rules of shifting from Latin to Italian), that "credetti", "credette" and "credettero" are more or less direct descendants of their Latin counterparts.
Now notice how, for example, sedere (2nd Latin conjugation, long "e") is "sederunt" on 3rd person plural (perfect). This, following the same rules, becomes "sederono". Still, just like "credettero" has its "crederono" form, "sederono" has its "sedettero" form.
The merging of the two conjugation into one probably gave birth to double forms like these. To further confuse things, many 2nd conjugation Latin verbs changed their ending and shifted to 3rd Italian conjugation "-ire"; "-are" became the "dominant" conjugation and there has been a tendency to conjugate most verbs following the rules of the first conjugation (you can see that "credei", "credè" and "crederono" follow the pattern of the most common 1st conjugation regular verbs, compare with "mangiai", "mangiò", "mangiarono").
As a side note, I'm Italian and "credei" sounds so strange to me... don't use it.