I have same problem as your but.
Mine one is if you keep look at north, forward backwards and left right animation is correct. But if you look at west, it become left right animation instead of forward backwards… Argh…
In blend blueprint you can change value name eg.
X = -100 and 100
Y= -100 and 100
Idle animation set at middle
Forward should be set at right side most and Right should be set at bottom and going on…
Then that way you can take value out of movement node and string it to set float value.
In animation page. String float value to X and Y blend animation same what you got.
That where I am. At least you got one direction work right, if you follow my way in blend animation…
Need find out right way to do it in local float value instead of world…