There is no way to truly force this pronunciation in English.
In English, we just don't pronounce the /h/ sound at the end of syllables. Because it is not a part of our phonological grammar, it can be difficult for a native English speaker to articulate the sound, or even perceive the sound at all, in that context. So, even if you pronounced it correctly and asked the native English speaker to repeat after you, they might still leave out the /h/ sound.
Since there is no context in which an English speaker pronounces /h/ at the end of a syllable, there is no spelling convention that indicates it should be done to someone who is unfamiliar with Farsi.
It is similar to trying to write something in katakana that will make a native Japanese speaker pronounce "cat" as we do in English. Japanese speakers have the /t/ sound, but it can't occur at the end of a syllable, so the closest approximation would be "kato" (or "katto" but let's keep it simple).
There are two spellings available to you, each one sacrificing one feature in favor of another.
- The standard spelling "Tehran" maintains the two-syllable prosodic form and indicates the "h" for those who are familiar with Farsi Latinization and phonology. But it will not cause an average speaker to pronounce the "h".
- The alternate spelling of "Teheran" (which was mentioned in the comments) puts the "h" in a context where it can be pronounced (at the beginning of a syllable — "he"), but in order to do so, adds a vowel and therefore another syllable. This is called epenthesis and is also how Japanese (among many others) repair unpronounceable clusters. The disadvantage is that you now have three syllables instead of two; also, you still aren't guaranteed to get pronunciation of the /h/ sound — between vowels, an "h" in an unstressed syllable often goes unpronounced in English.
First, I don't quite agree with this statement:
great is the only common English word in which "ea" is pronounced /eɪ/.
Break and steak are pretty common, and both have the /eɪ/ sound.
That aside, this goes back to the Great Vowel Shift, which is the cause of many of the peculiarities of English spelling. The linked Wikipedia article gives plenty of information, but the short version is that while most words with "ea" shifted to the /i/ sound, as in beak, some didn't, possibly because of the influence of the consonant following "ea". Great, break, and steak all have plosive consonants after the vowel; the "r" in bear and swear pulls the sound of "ea" in those words a different way.
And yes, I know, beak also has a plosive consonant, and fear ends in an "r". Changes in natural language are rarely consistent or easily explained, and this is one case where we just have to accept the fact that some words changed their pronunciation in a certain way and others, for whatever reasons, either stayed the same or changed in other ways. In other words, to quote Seth Lerer in his lectures on the History of English (2008):
As a coda to this lecture, let me mention a small group of words that seem not to have undergone the GVS. There are a small group of words that are spelled with -ea-, steak, great, break, and if these had participated in the GVS they would have been steek, greet, breek, and this is not something that affects every single word with an -ea-, it is not something which affects lots and lots of names spelled that way. But etymologically and historically, the words steak, great, break, should have participated in the GVS, and been pronounced steek, greet, breek. Why this is, nobody knows. So now I'm going to leave you with this provocation that even though linguists may think they can explain everything, there are gaps in our knowledge and exceptions to our rules.
Best Answer
From Dan Anderson, "Origin of the Word Yosemite" (posted December 2004; updated July 2011):
This summary of the word's history before it reached English explains why the Miwok people pronounced the final vowel-ending syllable of the name as in "-tee," but it doesn't explain why English speakers transcribed the name as Yosemite rather than, say, Yosimmity or Yosimiti or Yosimmatee. Madison Beeler, “Yosemite and Tamalpais,” Names [Journal of the American Name Society] (September 1955)—quoted on the same website as above—suggests that the spelling may reflect the influence of Spanish speakers, for whom the final e would be a voiced vowel roughly equivalent to the Miwok final i sound.
Actually, Beeler doesn't directly address the question of why Yosemite ends in an e, but he does cite Spanish speakers as perhaps influencing the choice of e as the second-syllable vowel in the word:
Spanish language influence is relevant, of course, because the earliest European colonists in California were from Spain or from Spanish-speaking Mexico.