As rogermue says, stress in Latinate words often falls on the third-to-last/antepenultimate syllable.
The applicability of this stress pattern depends a lot on the way a word ends, but it can be considered a form of the "Latin stress rule" that has been adapted as a rule for stressing certain kinds of English words (mainly nouns that have Latin noun endings, such as glomerulus and curriculum, and adjectives ending in -al, -ant, -ent or -ous).
According to the "Tutorial on word stress" from the Linguistics 300 materials posted online by Beatrice Santorini (Department of Linguistics, University of Pennsylvania):
Starting in Old and Middle English, but particularly after 1500, English borrowed many words from Latin. This fact is relevant for our project because many words that were in actual fact borrowed from French (at least as far as the editors of the OED are able to ascertain) might in principle have been borrowed from Latin instead. Just looking at a particular word, there is no way that a speaker, either now or then, could tell which language is the immediate source of the borrowing.
Stress in Latin was based on syllable weight or quantity.
(6)
a. Closed vs. open syllable:
If a syllable ends in at least one consonant, it counts as closed.
Otherwise, a syllable counts as open. There are some complications to this straightforward system: First, in words with s + stop, the syllable boundary was between the s and the stop (for instance, au.gus.tus rather than au.gu.stus). Second, syllable boundaries involving stops and liquids were ambiguous (at least in Latin verse) and could count as open or closed.
b. Heavy vs. light syllable:
A closed syllable or one containing a long vowel or diphthong counts as heavy.
Otherwise, a syllable counts as light.
Another way of making this distinction is in terms of moras (one mora = light; more than one = heavy).
c. Latin stress rule:
Word stress falls on the penultimate syllable if it is heavy; else, on the antepenultimate if available; else on the penultimate.
In fact, the word omnipotent is one of the words of multiple possible origins that Santorini mentions. The OED says
Partly a borrowing from French. Partly a borrowing from Latin. Etymons: French omnipotent; Latin omnipotent-, omnipotēns.
The French word omnipotent takes stress on the final syllable. English words ending in -ent and -ant are not stressed this way today (except for more recent or less naturalized borrowings, perhaps, like savant), but this stress pattern was used in Middle English.
The first OED citation for the word omnipotent comes from "The romance of Guy of Warwick", a 14th-century poem, and the last syllable plays the role of a "stressed" syllable in the meter:
To a turet sir Gij is went,
& biheld þat firmament,
Þat thicke wiþ steres stode.
On Iesu omnipotent,
Þat alle his honour hadde him lent,
He þouȝt wiþ dreri mode;
(The romance of Guy of Warwick. The first or 14th-century version.
Zupitza, Julius, ed. 1844-1895.)
Polysyllabic English words with stress on the third syllable or later tend to have a secondary stress earlier in the word. I'm not that familar with the evidence we have about secondary stress in Middle English, but it seems possible that the position of the primary stress of "omnipotent" in present-day English is partly based on the position of secondary stress in the old pronunciation with stress on the last syllable.
Latin stress is definitely likely to have played a big role in the modern pronunciation of omnipotent. The Latin nominative singular form omnipotēns takes stress on the second syllable, something that English speakers would have been more aware of in the past when it was more common for educated people to learn Latin.
Why "omnipresent" is different
As Greg Lee says, it's very easy to recognize the second part of omnipresent as the independent word present, which is fairly common (certainly a lot more common than potent). The high frequency of present may mean that the stress of the independent word is more salient when people say the word omnipresent than when they say the word omnipotent.
Another thing that might be relevant is that the word "present" actually has a weird pronunciation that isn't consistent with the usual way Latinate words are pronounced: it's /ˈprɛzənt/, with a "short e" sound /ɛ/ in the first syllable, even though the regular pronunciation for a Latinate word would be expected to have a "long e" sound. This might make speakers feel that present, along with other words based on it, doesn't really belong to the system of regularly-pronounced Latinate words in English—and the "Latin stress rule" is mainly a thing for words that are part of that system.
(Actually, there are Latinate words that are pronounced with stressed short penultimate vowels, but these all have "virtual geminate" consonants—e.g. "repellent", where the double "ll" of the orthography has been argued by some phonologists to correspond to some kind of double consonant in the underlying representation of the word in modern English. I suppose "present" /ˈprɛzənt/ might be analyzed as having an underlying form with a "virtual geminate" in the middle—prezzent—and in that case, the penult stress of omnipresent would be regular according to the Latin Stress Rule. It's true that present is not written with a double consonant, but this doesn't seem to be a necessary requirement for proposing that a word contains a "virtual geminate"; in "The Architecture of the English Lexicon" (1998), Jonathan B. Alcántara suggests that zealous may be built on a stem /zell/ (p. 7-253). But this kind of analysis is very abstract.)