In "He has married", the word "married" is a verb, describing an act done at one point in time. It cannot be done "for three years". It is possible for present perfect to be used for habitual repeated actions over time (e.g. "He has cut his own hair for three years"), but getting married does not count as a habitual action.
In "He has been married for three years", the word "married" is a