Google shows the best performing ads automatically. Prices paid per click is determined by your sites niche, traffic source, and how they convert for the advertiser when compared to other advertisers (smart pricing). You can cut down on the number of ads you are running which will likely improve the price per click.
Okey, so there is really no way to gain more high paid keywords. My site show many random sites paying for my niche keyword which sucks. I do remove them as soon as I see them.
I would block all the big sites that pays low. Such as shopping.com, ask.com, dexknows.com, ebay.com and target.com
No problems, hope that will help you a little. I worked for me, those sites always show on my page and the payout are so low, i decided to blocked them and my adsense earning increased.