To answer to your question directly:
Why not vidēbam? Is it optional to use the imperfect here? Or does the perfect tense convey a distinction here, like "I saw him here several times in the past" vs. "I used to see him here often"?
Just as you thought, imperfect is not compulsory because there is a distinction that may be made. You could actually use a different tense (e.g. pluperfect.)
Both perfect and imperfect may have different translations in English:
- vīdī ⇒ I have seen (also, I saw.)
- vidēbam ⇒ I used to see (also, I was seeing.)
The first translation given for each tense is the one I think is more relevant in the example you give. Both tenses are compatible with seeing someone often.
Perfect means that the action being talked about has been completed, as if clear boundaries in time were being given. It also may refer to something that has ended recently.
Imperfect, in turn, does not necessarily mean the action hasn't been completed, but that the boundaries aren't clear. Information about when the action did start or end (or whether it actually ended) is not available. The lack of clarity (in my opinion) makes the tense suitable for actions somehow more remote in time.
The sentence could also have been Faciem recognōvī, saepe eum hīc vīderam (with pluperfect.) Pluperfect involves an action that was already completed when another action in the past took place: I recognized his face [because,] I had seen him here several times [before that.]