These stats are obviously underestimating what you can get: they are based on what most miners do, not what they could do. The fees could easily be 2 to 2.5% with bitcoind 0.8.2 default settings.
con: you get a lot more orphans & more processing power is needed, not altogether related to the getblock latency, but actual transferring within the p2pool network itself
Not if you configure bitcoind and p2pool to lower their network traffic as (again...) explained by the guide in my signature.
TL;DR: I have an average ADSL connection and use it for several other traffic types (Bitcoind+P2Pool is ~30% of my BW).
I can even use 1MB blocks and lower minimum fees without lowering my efficiency (reaching 3 to 5% additional fee income).
I only had to limit the number of bitcoind (10) and P2Pool connections (5 outgoing + 5 incoming) to get this result.