You see, The Legend of Zelda timeline takes place among millions of millennia with the landscape always changing. Most Links and Zeldas you see are actually descendants in a LONG family tree with Ganondorf being the only one to have three incarnations due to being sealed away, breaking out and rarely destroyed in the series. The reason these three people's incarnations are always somehow intertwined in most of these adventures is because in Skyward Sword, (Which is the earliest game in the timeline) Link had to face an ancient Demon King known as Demise as the final boss who wanted to absorb Zelda's essence to become unstoppable, steal the Triforce to make a single wish, and conquer the world. But when Link defeated him and sealed him in the Master Sword, Demise had said in his last words that he placed a curse on him and Zelda and explained it in detail. "Extraordinary. You stand as a paragon of your kind, human. You fight like no human or demon I have ever known. Though this is not the end. My hate... never perishes. It is born anew in a cycle with no end! I will rise again. Those like you... Those who share the blood of the goddess and the spirit of the hero... They are eternally bound to this curse. An incarnation of my hatred (Ganondorf) shall ever follow your kind, dooming them to wander a blood-soaked sea of darkness for all time!"
— The curse of Demise
So basically, Link and Zelda's descendants are forever doomed to facing Ganondorf, and when he does die, a new incarnation is born which is Nintendo's perfect excuse to prolong this series as long as they want.