why would the same exact page... improve its ranking for 3 keywords and get its ranking worse for 2 keywords. to me it can't be because of competitiveness there as to be something else.
That's an important question... and based on an important observation. It points to a change in the way Google builds search results today, compared to the traditional way.
I don't claim to fully understand it, but I'm pretty certain the change is related to phrase-based indexing, rather than conventional "word" indexing.
A search for [three words] today does NOT simply give you the result set for [two words] minus the pages that don't include the third word. To say it another way, [two words] is treated as a single unit today, and so is [three words]. And the overlap between the results is not what we expect.
Each commonly made query phrase for [two words] or for [three words] has some preliminary scoring already related to it. This scoring is based on how strongly the phrase predicts the presence of other related phrases on a web page. And those other related phrases are chosen according to how well they match certain user intentions. The data used to build up these kind of relationships can also include the accumulated revision histories for a phrase, for example, and not just indexed web pages.
So each word in a query phrase is not related to the others with equal semantic strength or importance. Think, for example, about [white house paint] and [white house informer]. You can even see Google search results where Google decides that one of the query words is not important at all (it's not "predictive") and so that word does not actually need to appear on pages in the result set.
I'd say you can get a taste for how longer phrases stack up by studying the drop down Suggestions. If the three word phrase doesn't even show up after you type in the first two words, then the relationship is not very strong. That is an over-simplification, and that's why I said it gives you "a taste".