I am not well-read as to whether or not Edward IV was the legitimate heir to the throne. However, the statement that the royal family are not British is absolutely untenable.
First of all, there was no country called Germany until 1871. There were a large number of independent counries populated by racial Germans- Hanover, Hesse, Prussia, etc. It is better to speak of being Germanic than German. The Anglo-Saxons, the first Englishmen, were definitely Germanic. A strong strain of Germanic blood runs in the veins of all Englishmen.
I believe that there WAS a question [at one time] as to whether the present British royal house represented the legitimate branch. However, the question of their being British or non-British isn't really an issue, in my estimation. Here's why.
Even if German descent could exclude one from inheriting the throne: Although George I was born and raised in Germany, he was, indeed, a direct lineal descendant of King James II. If the king (definitely a Brit.) was his ancestor, and he, conversely, was the great-grandson of the king (which he was), then for all practical intents and purposes he was a Brit., plain and simple.
Britain's royal family is unique in the massive level of continuity from common ancestors. Queen Elizabeth II can trace her descent, through George I and James II, to James I. James I can trace his descent, through the houses of Lancaster and York, back to the Plantagenets, who were direct descendants of William the Conqueror.
The only question that might have existed [regarding the legitimacy of the present house] had to do with James III, the old pretender, Duke of York. The Duke of York was, as the eldest son of James II, the legitimate heir to the throne. However, his last descendant died in the 1790s. Their closest relatives were (and are) the present royal house. Upon the death of the last Stuart claimant they would have inherited the throne anyway.
The statement that the Windsors have no genetic claim to be British is, frankly, hogwash.