Update Journals
Journals show your recent activity such as
1/9/2017 6:31 AM Recieved 7 items from Pokestop
1/9/2017 6:33 AM 131 CP Weedle was Caught.
All they really need to do stop spoofers is 3 simple steps.
1) Add Location to Journal Logs. Ironically the Weedle already has a location "X, Michigan" on it just add this data to Journal Log.
2) Add entering a Gym (with Location) to Journal Logs.
3) Write an a check that compares time & location between Journal Events.
IE: if a log entry shows you entering Gym X at 6:02 AM and Gym Y at 6:03 yet, the gyms are 5 miles apart. Boom.
Create an in-game Mail System if they want so they can warn people or leave a way for people to make claims.
Would this be perfect anti-spoof? Nope.
But it shouldn't be hard since they have all the necessary info already either on thier server (Location of all gyms) or on phone itself (where from and journal)
Answers
The problem is, spoofers do not use teleport(if they are smart, those who use are already banned), some GPS hack apps have joysticks that manipulates the cordinates and allow the spoofer to walk in the game like they were walking on real life. And if they need to go to another gym, they can simulate a car or a bike and go faster.
I also like this. It would be fairly easy for Niantic to establish a database of gym-to-gym travel times, using same technology as in Directions in Google Maps. If a movement between two consecutive gyms are clearly unrealistic a soft ban could be issued (e.g., a 1 day account lock-out).
Spoofers with route planning capabilities would still get away but they are still burdened by the need to wait for routes to be completed and as thus are not as time-efficient as hoppers that jump vast distances in short time.
This solution would work best in rural areas with remote gyms and long gym-to-gym travel times.