Semantic drift always makes such a mess of cognates. One of my best examples of that is an etymological triplet in Portuguese:
- ⟨feitiço⟩ spell, witchcraft - inherited from Latin ⟨facticius⟩ artificial, made up
- ⟨factício⟩ artificial, made up - reborrowed from Latin ⟨facticius⟩
- ⟨fetiche⟩ fetish - borrowed from French ⟨fétiche⟩ fetish, in turn borrowed from Portuguese ⟨feitiço⟩
All three were originally the same word with the same meaning. Borrowing here, borrowing there, and now they're three different words with completely different meaning.
So here’s my point, assuming you’ve lasted this far. Modern German in fact split from modern English maybe around ~~800AD?
A good reference date would be 450 or so, when the Jutes, Angles and Saxons invaded Britannia. It's what created the geographical barrier between Germanic speakers, that allowed English to diverge considerably more from continental varieties (Frisian, Dutch, German "dialects" [actually local languages]) than it could otherwise.
For the French borrowings it's complicated because they didn't enter the language only once as a "nice set", but across centuries. And they weren't from a single Gallo-Romance variety but two (Norman and French).
And often the very fact that they've been borrowed changes the meaning. A good example of that is French ⟨porc⟩ pig, pork; it can be used for both the animal and the meat, but once English borrowed it as ⟨pork⟩ it was mostly used for the meat only, with then the old word ⟨pig⟩ being specialised to the animal.