i had a video with out-of-sync audio, owing to an irregular bitrate. After a lot of useless attempts at fixing synchronization, i actually found a good solution in VideoLan VLC media player.
It has a convert function which totally fixed the desync. Although I have converted my AVI to MP4 (which was surprisingly fast considering entire re-rendering of video and audio), i’m quite sure it works the same way with same-type conversions.
I loved it because it was fast, hassle-free and best of all, i’ve done it with a FREEWARE tool!
Just make sure that the audio bitrate is a stable one (128,192 kb/s etc)