Why there is "have come" instead of "But plenty came to him when..."?
"Have come" is the present perfect, and it refers to recent past and/or ongoing events in the present also. Why not use the present perfect? Each tense has a meaning, which could conceivably be applied to a situation.
But plenty came to him when they weren't able to heal through traditional means.
That's fine, in the past tense.
But plenty come to him when they are not able to heal through traditional means.
The problem with present tense is when you consider "plenty come to him". In order to know verifiably that it's "plenty", we must have observed it already happen. Thus, in the past or recent past. Not literally in the present. Therefore, one of the past-related tenses (present perfect, past perfect, past) could be a good choice. However, you may still use the simple present tense, it's not ungrammatical.
As far as I know, past simple or past perfect are tend to be used with "when", because they are more specific.
Fascinating. Sometimes this is true. As an exercise for the reader, take a sentence with "when" and switch it to the present perfect. Occasionally, the word "when" switches to "whenever" or "every time". The difficulty with "whenever" or "every time" in the original example, is that "when they haven't been able to heal" is a somewhat unique and one-time event. So, "whenever" or "every time" would be transitioned back to "when", indicating it probably only happened once, or at least very infrequently.