I would do three things with this problem before spending money on anything. (No. 1 being most important)
1. Check the point is truly level and all railheads are on the same plane. A spirit level is adequate for this, checking that the point is level across its width at various points(placing the spirit level across the rails). I would adjust by using cardboard or plastic spacers as required, usually 0.5-1mm is enough
2. Look underneath the loco and make sure all pick ups are touching the wheels - you can usually see if they're not. Move the wheels side to side and make sure they still touch. You can also check pick ups using power and flying leads - a more thorough method
3. Once the point is level and you're happy with the pick ups, run the loco slowly and if it stops then get a length of wire, clip to one rail and take the other end to each wheel in turn(each wheel on the rail on that side) and see when it restarts. It might not restart so repeat but with the wire clipped to the rail and wheels on the opposite side. It might be easier to remove the loco body to do all this.
Hopefully the answer will have revealed itself but if not then there are a number of further potential solutions, some already suggested and all these have merit too. All part of the fun of railway modelling!