Read is one of those words that you need context to know how to pronounce. If a book says “he read,” obviously it’s “red.” If someone says “Read this,” it becomes “reed.” I’m sure I’m the only one who feels this way, but it bugs the snot out of me. You’d think two letters together would always be pronounced the same way. But linguistics is never that simple.
Both pronunciations have the same origin: the Old English redan, which meant explain or advise. Going back on the linguistic family tree, we have the Proto Germanic raedanan and the Proto Indo European re—to reason or to count. It makes sense that riddle has the same Old English ancestor. When we’re reading, we’re putting together symbols to decipher meaning. That sounds a lot like a puzzle!
Now, as to why the pronunciations between the past and present tense are different, we have to look at some history. There’s more than one Old English pronunciation. Redan is more Anglo-Saxon but the West Saxons pronounced it rædan. It seems the different tenses took the different sources for pronunciation. And as usual, Modern English speakers felt it was easy enough to check context to determine which pronunciation is required.
It comes back to that a lot. Words that are spelled the same but pronounced differently always rely on interpretation! If you’re reading out loud, you aren’t going to mistakenly say “she reds the book.”
Linguistics is like an organism in that its evolution is in no way simple.