Is there an explanation to the "exponential" growth of power levels in Z fighters? I haven't watched Dragon Ball in detail, but I think something like this has never been explained and it doesn't make sense to me at all.

It took all Dragon Balls for Goku to go from power level of 10 to a maximum of 950 in his fight against Raditz. However, in much less time than what took Dragon Ball to happen, he managed to get to 8000 in base form to fight Vegeta in relatively little time, and then to 300000 in base form in even less time to fight against Freezer, and so on...

It's obvious that if you get better training methods, you can improve faster. However, I think something like that doesn't make sense in this case even for an anime. I'd like to know if there's an in-universe explanation for this exponential growth in power level.
One possible answer is that Saiyans get way more powerful than before if they agonize (and survive). It's called Zenkai. This ability is found in pure Saiyan, half-blood and even Cell. 

One example is when Gohan fights Cell, kicks him around, but refuses to kill him. This allows Cell to recover and get way stronger than before, making it very difficult to Gohan to kill him, even with help of other warriors, Vegeta and even dead Goku. In retrospect, Gohan could have single-handedly kill Cell, but he didn't do so at the beginning of their fight.

Not by coincidence, this "ability" make every fight involving Saiyan longer and with plot-twists.

Source: Zenkai - Dragon Ball Wiki