I wonder if there are homonyms where one meaning has an OE etymology and one has a Romance etymology.
- I found one: "rose" (as a flower or color < Latin "rosa", as a kind of motion < Old English "risan")
So, you have to be a little careful about the etymology of meanings as well. Also, you should allow inflections (has, have, having, had) which might not be listed separately in some dictionaries or word lists.
The issue of inflections can be mitigated by applying Porter's algorithm to each word before you examine it. The algorithm isn't perfect, but it is fast enough to use in a context like this. An Emacs Lisp implementation is available:
You need to read Japanese to make sense of the comments, but it does seem to work, and for cases it can't handle an exception list shouldn't be too hard to implement, most simply by just including exceptions in the dictionary and falling back to exact matching when you can't match a stem.
Inflections, yes, although they may be listed separately. We shall see.
However, checking the intended meaning through context would be really hard. So the best I could do is offer warnings for words with both, indicating that the usage may or may not be valid.