The writers and printers of the 1500s didn’t have access to etymology dictionaries, so they sometimes mixed up Latin and Greek words. That’s what happened with the Latin name Thames.
Of course, it’s spelled ‘T-h-a-m-e-s,’ even though it’s pronounced with a simple ‘t’ sound. The word has Celtic roots, and it has been around since Old English. It had always been pronounced with a simple ‘t’ sound at the front, but in late Middle English, it started to pick up the modern TH spelling, presumably because it resembled some of the Greeks words that were coming into English at the time like the Greek word teme which became theme after the spelling was changed. So the Thames got a TH as well, but the pronunciation didn’t change to reflect the new spelling. The name was probably too common and too familiar to English speakers for the pronunciation to be altered by a spelling change.
Taken from The History of English Podcast by Kevin W. Stroud.