1. A man who had common sense would not do that.
2. A man who has common sense would not do that.
3. A man who has common sense will not do that.
To my ears, these three sentences have the same essential meaning. They express a judgement about how sensible it is to "do that". The difference is one of tone: #1 makes the idea more "distant" or "speculative", and #3 makes it more "immediate" or "direct". So if someone were "doing that", #1 might sound like advice, or a general comment; whereas #3 would sound more like a direct reproach.
In #1, the past form "had" is consonant with "would"; in #3, the present form "has" is consonant with "will". But as Casiopea says earlier, there isn't a literal "past" meaning to "had": both "had" and "has" convey a sense of "any time", rather than the literal past or the literal present. Similarly, the "man" in each case is a generic "man". You might easily exchange "man" for "someone" or "anyone", e.g.
4. Someone who had/has common sense would/will not do that.
#2 is a mixture of #1 and #3. Native speakers often use mixed forms, in conditional contexts. Here, for instance, the speaker might feel obscurely uneasy about using a past-tense form ("had") with a non-past-tense meaning. (Native speakers in offices will often ask each other for advice about this kind of question, e.g. "does XYZ sound right to you? Should it be 'has' or 'had'?")
Turning to the rule that "a subordinate clause that is subordinate to a conditional clause is not affected by the tense applied to the conditional clause": I would say that this is true in that it's not absolutely necessary for the subordinate tense to follow the conditional tense. But it's certainly possible. In your sentence, for instance, I would be happier with "was honest", for reasons of concord:
5. If he knew | that she was honest | he would not blame her.
(Other speakers would disagree with me, though!)
But I think that this rule is in any case more applicable to cases where a subordinate clause hangs off one clause of an IF statement, as in #5. In your original example, however, ["a man" + the defining relative clause] is the equivalent of a principal IF clause:
6. A man who had common sense | would not do that
7. If a man had common sense | he would not do that.
= IF clause + main clause.
8. If a man had the kind of common sense | that my father and grandfather have | he would not do that.
= IF clause + relative clause + main clause. Here, the "have" in the second clause obeys your rule, and is fine.
(But these are only the thoughts of "one set of ears". Other members may have other interpretations!)
"I have been fully aware and learned that I should use the past tense in the if clause when we express a situation that is highly unlikely to happen."
You can also use a type 2 conditional when giving advice, for instance, or when speculating about an event that may well happen, e.g.
"Is this the road to Portsmouth?"
"Yes, it is. But if you took that road over there, you would get to Portsmouth much more quickly."
"Fine, I'll take that road over there, then!"
PPS: Casiopea answered (much more succinctly) while I was writing the above reply. But I'll post mine anyway, in case it helps.
- For Teachers