Do the Latin have any other verbs, whose perfect tense forms base on the lexical root, that differs from the lexical root of the infinitive form (by analogy with the verb fero > tuli)?
Ferre is not the only example, but the phenomenon is quite rare. Here are the examples that come to mind:
- ferre (tul-) and prefixed versions
- esse (fu-) and prefixed versions
- tollere (sustul-)
Predicting the perfect stem from the present stem is quite hard outside the first conjugation, but they do still generally come from the same origin with some adjustments. For example, tang- and tetig- both have the element tag, one with a nasal augment and one with reduplication and weakening.
In general, this is called suppletion: when some forms of a verb are stolen from a totally different verb. For example, English to go has no past-tense forms; the past tense is taken from the unrelated verb to wend (as in "wend your way").
In later Latin leading into Romance, for an extreme example, the verb eō, īre lost many of its conjugations, replacing them with forms from ambulāre "to walk", vadere "to advance", and even esse "to be"! The choice of which to use isn't consistent even within a tense: compare French je vais < ego vadō with nous allons < nōs ambulāmus.
For some more Latin examples:
- sum, esse, fuī, futurus, "be", suppleted with (effectively) fīō "become"
- fīō, fierī, factus, "become", suppleted with faciō "make" because esse stole its perfect stem
- As you mentioned, ferō, ferre, tulī, lātus, "carry", suppleted with tollō, "lift"
- tollō, tollere, sustulī, sublātus, "lift", plus a prefix because the original perfect forms were stolen by ferō
- feriō, ferīre, percussī, percussus, "hit", suppleted with percutiō "beat" (thanks to Hugh for this one)
All the other ones I can think of are compounds from one of these, usually sum.