The only bad thing is the 2007 is 3k more
Based on the prices you posted above, it's $2K more, not $3K more. But quite aside from that minor point, I assume these are the prices listed in the ads. I looked up the prices of similar cars on Autotrader, and the prices you mention above are the common asking prices ($21K for a 2009 Tech with 90-100Kish miles, $23K for a 2007 Tech with 50-70K miles). Most sellers, including dealers, are willing to negotiate downward in price for a buyer who's serious. An offer of $1K less than the asking price (on a $20-25K car) will almost always be accepted; an offer of $5K less will almost always be rejected. But how low will they be willing to go? It's hard to tell, until you make them an offer.
If I were you, if the 2007 is the one you want, I would offer them $19K for it and see how they respond. If you're lucky, they might accept the offer outright, but more likely, they will make you a counteroffer, probably something in the $20-22K range. If the counteroffer is $20K, I'd accept it; if it's $21-22K, you could try countering with an offer $1K less than theirs, and see if they will agree or won't budge.
Also note that there are plenty of other MDXs on the market, so you don't need to limit yourself to only these two. Just for example, right now there are 133 different 2007 MDXs with the Technology package and under 75K miles for sale on Autotrader right now (click here
for a list) and many of them show an asking price of $23K or less. Maybe you can find one in a color you like better, too.