Acting up to get away with things isn't a new idea.. It works in most cases, and every now and then the people get a nasty surprise - and then go moaning to the press/social networks and talk about heavy handset staff.
Go further east in Europe and you'd see a no tolerance approach being applied by revenue staff (or police) that would be far more intimidating and probably quite happily halt the service and cause untold delays. Here, we'd moan and say it was disproportionate and it's never worth delaying a train (all the extra fees, delay repay claims etc).
The thing is; if you are known to have no tolerance policy, people will eventually realise and you - hopefully - see a drop in such incidents.
It also helps if the general public would actually support those in authority trying to do their job.
Unfortunately, I don't see TOCs changing their guidance to staff (nor would I expect them to) and the only solution would be to invest in a lot more BTP officers to patrol on trains, and that's just not going to happen. As I've said countless times before, you'd likely see a fall in crimes - but then accountants would argue that you don't need so many police...