I have been thinking for a while we just need to make it unacceptable.
Start a movement - everytime we see somebody on a phone we honk heaps and point them out. Really, we are just warning other drivers about the presence of an idiot nearby.....
Once the majority of people are doing it the shame factor will stop a lot of them.