The "-dir" suffix can be added to verbs, nouns, adjectives or adverbs. "Bir asırdır yüz yıl." is not wrong, it is just inverted. In Turkish, verbs are generally placed at the end of the sentence. And, "-dir" suffix that is used for facts and statements can be treated as the translation of the verb "to be". Therefore, in a regular sentence, it must be placed at the end of the sentence.
Does the -d|r sufix here works the same way as here -> "Burada iki gündür yağmur yağıyor"?
The -d|r suffix is used for factual statements.
Just to confuse matters it is also used for, "suggestion."
My experience on Duo is this;
If I forget to use it for factual statements Duo will decline my answer.
Most of the time it is, "optional" & I try not to use it. You have to make a judgement on this yourself as necessary. You will see on all my answers if it is optional & I also say, "answer not accepted without the -dir suffix.
"Burada iki gündür yağmur yağıyor" Optional use of the -dür suffix.
"Burada iki gün yağmur yağıyor" Correct answer without the -dür suffix.
Good explanation, but -dir suffix in mamimi18's comment is not that kind of suffix that is used for facts or statements. It implies a specific time duration. I found a more detailed explanation on internet regarding this matter.