Here's why:
* "Have been feuding" is a present perfect continuous verb phrase. It indicates an action that started in the past and continues up to the present.
* "The families" is the subject of the sentence.
* "For many years" is an adverbial phrase that tells us how long the feuding has been going on.