Translation:I have been waiting for you for a long time.
To explain, when describing how someone does something it's quite normal and in fact is considered standard to say the thing being done first then to repeat the verb with the quality after it. 比如, 他說漢語說得很快, 你寫字寫得很好. I believe this spills over into the usage of 等 when expressing lengths of time with an indirect subject like 你 etc.
The first了is known as an aspectual particle; it indicates the action is completed. I was waiting for you, but now that you're here, I am no longer waiting for you.
The second 了is known as a modal particle, and it is used to indicate that the situation has changed in some meaningful way. Now that I am no longer waiting for you, we can go to the restaurant, the situation has been updated.
It's a very subtle distinction, and it's confusing to learners that 了 can be used in two distinct ways.
了 in its aspectual usage is always immediately after the verb, whereas 了 in its modal usage is always at the end of the sentence.
Here's a good site explaining the difference between the two.
Ack! I don't know what I was thinking when I posted that question. I must have been practicing late at night! To explain for anyone else here who also has this question, however: The (verb+object)+verb+了+time duration+了 is a standard sentence structure. It conveys something that "has been going on" for the time duration up to and including the current time. I believe it's the fact that there is a time duration between the two 了s that shows that the action is still ongoing. You can think of it as "the fact that this quantity of time has now passed is the 'new situation' that the sentence-final 了 indicates." If you look at examples in the two-了section in the helpful link shared by vqmalic above, you will see that when there is a time duration between the two 了s, the translation is "has BEEN runnING." Whereas, when there is something else between the two 了s, the translations are "has eaten" and "have spent."
Note: I admit that the sentence in the article puts the object after the time duration: verb+了+time duration+object+了. I don't believe that changes the meaning, however.
They are all correct. Duolingo is sometimes unnecessarily strict in the placement of 了, but that could be because it is quite challenging to explain when and how to use it.
For your final suggestion, 我等了你等很久了 or even 我等了你等了很久了 would sound better, highlighting the challenge in mastering this particular character.
For the last one it's a bit redundant, omit the second 等 leave it as 我等了你很久。They are all correct, but they all express the thing in a slight different emotion/attitude. The original one emphasized the person has waited a long time(complaining) but the ending word makes the tone a little softer, less harsh. While the third version you suggested basically is a simple statement, the tone is unknown.