That can only be solve with the multiword. Microsoft is NPFS000 but Microsoft Windows is NPMS000. When you have more than one word, add it to multiwords.txt. It is the same as before, but without lemma.
I noticed your commit. You corrected Leitão, but since this is also a relatively common name, it might be better to only use it also on multiwords. See ‘Vilas Leitão’ for the applied example, and, please tell me if you found other false positives with it.
Portuguese family names are tricky because they can be almost any noun, so they should only be added in combinations, unless they are not ambiguous.