FFMPEG is doubling audio length when extracting from video

Try this:

ffmpeg -i video.mp4 -vn -sn -c:a mp3 -ab 192k audio.mp3

I have used this for the same purpose and it didn't change the duration of the audio. Also, (IMHO) trying to increase the quality is just overkill, but you could try with 320k.

Google turned up some bug reports in the ffmpeg Trac that show that -write_xing 0 on your ffmpeg command line may fix it as well. It seems the discrepancy in the length stems from incorrect values in the Xing data being written by default.