You can overide the ping refresh rate ingame but I forget what you need to type(press"`" while ingame then type something in there) - the defaults are lame. I`ll get back with right info if I can find it
Edit - turning off eax can help too
Edit2 - actuall its not ping but this affects it, it fixed my high ping rate anyway:
Punkbuster scans your Pc every 20 seconds, which does implant lag while in-game (though not much, it can make a difference). Pb will let you change this, and make it 500 seconds (which is 8 minutes & 20 seconds). They allow no higher than this. This will obviously (if worried about detection), make you less likely to be caught with any hacks on your Pc that are suseptible to being caught. Some of you most likely already know this, but anyhow, here we go since I know there are some members out there who don't"
1. Join a PB-enabled Bf2 server
2. Spawn & open your console (console key to open: ~ or `)
3. Now type '/pb_sleep 500' (w/o quotation marks) and then press Enter.
4. Now you must save your PB file change by inputting this console command: /pb_writecfg
Source
http://209.85.229.132/search?q=cache:rjUSOUvCDZQJ:www.emforces.com/showthread.php%3Ft%3D159+bf2+set+ping+console&cd=3&hl=en&ct=clnk&gl=uk
Edit3 - soz, link won`t show up properly, also thers other stuff in there that can help