I have a long distance (2.1Km) connection on a section of my network that is just as you describe. I have overkilled it by putting a 24db grid array at each end and pumping out 84mw each end (WAP54G with firmware hack) This gives us ping times of 1-5ms at full speed. But this is point to point with both APs setup in AP mode. Our longest connection is 8.9km LOS. 24db Grid array at the router end with a 14db panel at the repeater end. Both ends are putting out only 22mw.
VERY BIG WARNING: putting out 84mw into 24db gives roughly 19 watts ERP(Effective Radiated Power). This is a LOT of power at that frequency and is NOT reccomended. This connection is rural so I am getting away with it.
I would suggest something like a 2.4GHz 14dBi Rootenna (RT24-14) as this allows the AP to be mounted at the antenna to reduce signal loss. You can also use POE to the AP.
You also need to consider whether you are getting a direct signal from the originating antenna because if you are only getting a bounced signal this could change with the seasons or surronding environment.
This site has a calulator so you can work out your power/antenna requirements with/without obstructions.
Radiolabs - Wifi Range Calculator
I hope my comments help in some way.
Regards
Fred