I think Pool ops need to add to the User Agreement that users found to be selfish mining forfeit any non-dispersed mining funds and are contractually obligated to return their ill-gotten gains. Most other users would support this.
The problem is how can you prove it statistically except for looking at massive deviations (like 6 magnitudes off).
I am not totally sure how mining works now, but couldn't a pool spot check miners by giving them work known to contain a valid block solution every now and then? I'd be easy to get evidence this way.