I replicated your code and found similar results. There's something strange going on with the Bullet behavior.
8Direction behavior doesn't appear to have these problems when moving along Solids. So I removed the Bullet behavior and used this code instead:
(If you don't know, Vector X and Y essentially tell the ball how strongly in the X or Y direction it should move.)
And these are the 8Direction properties I used for the ball: