I turned down the controls to Arcade. I've been doing even more testing about this for several hours, on various surfaces, and on Incredible (pretty much all I've been doing these past few days haha) and I realized this issue is very easy to exploit. I think it would be so much better if the CPU just stopped doing this altogether.
If I hit a safestrike and rush for the net, 99% of the time it would actually be better for the CPU to stay in place and prepare an acceleration aimed to the sides, instead of stepping forward. Stepping forward to give itself more angles is less useful because although CPU may get to the ball quicker, his strike will be slower and less precise. This can be very exploited easily by the user: I can pretend to rush for the net by running a little bit forward, and then quickly go back to behind the baseline, because I know that if I do this, CPU will step forward toward the ball and so he typically won't be able to do a well aimed acceleration and because he thinks I'm going for the net.
So in my opinion the solution should be:
1) to get rid of whatever code tells CPU to step forward towards the ball when I do a safestrike + run forward
2) make it much more rare for CPU to do this. Maybe make it so that it only triggers when user does a safestrike and crosses the baseline completely and is near the service line. Because even if it triggers immediately when I cross the baseline, it can still be easily exploited.
Here is a video showing how I exploit it, look specifically at the second point. Even though I moved forward enough to stand directly at the baseline, I went backwards , so I was able to take advantage of his shot, which was weak and not well aimed because he stepped forward and expected me to be closer to the net. If CPU had stayed back, he would have 99% won the point.