Normal synchronization (with use of AVI player) does exacly this thing - it changes FPS of subtitle + move subtitle when necesary.
It should work perfectly unless the movie and subtitle are compatible (sometimes subtitles are just BAD and there is no easy way to synchronize it with movie).
If there is a problem like - first part of move after synchronization is OK , and after some time subtitles are loosing synchronization - most likely you have such a bad subtitle file.

Sometimes it's still possible to fix it by spliting subtitle file into few parts and synchronizig each separately - then merging it into one final file.
Best regards !
Irek