that's not true, either. people with better systems win out in the 'everyone includes every transaction' theoretical.
i'll throw this out there: people saying to include all these transactions are being greedy. you want to increase your own "efficiency" rate at the expense of people with slower systems. for someone to have >100%, someone else has to have <100%
In the presence of a health p2pool network strength, the theoretical optimal strategy of a p2pool node operator is to have the have the best system, lowest latency, you can get. That includes:
1) have a top notch fast system
2) limit transactions
Following (2) to its logical conclusion (i.e. zero transaction blocks) is bad for the network. Following (1) isn't necessarily bad for the network (unless you say it discourages smaller p2pool nodes, but they can just mine the bigger/faster public ones if it gets bad). However, I think there is some happy medium where (2) could be beneficial for the bitcoin network. In exchange for adding the hashrate of many small p2pool miners you get some smaller blocks. That is could be an acceptable trade-off. Going to zero-transactions, however, is not acceptable.
My point is that the optimal p2pool strategy is bad for the bitcoin network. Is there something that can be done? Force p2pool shares to contain a certain number of transactions? A number small enough that doesn't kill small pool latency but big enough to help the network?