This was driving me nuts, but I finally found a solution! You don't need  root or anything to fix, but you do have to enable the secret hidden  menu, then adjust a few settings. To enable to hidden menu and access  the "audio tuning" settings go here:
Android_Secret_Code String Revealed! - Android Forums
Once you access the audio tuning menu, select "stream", and then select  which setting you want to adjust, either headset, speaker, or earpiece. Once inside, you will want to  adjust the "SYSTEM" setting. Google nav uses the system volume setting  for it's navigation volume, so this what needs to be adjusted. I have  mine set as follows in both stream_speaker and stream_headset settings and it is much louder:
step0 = 0
step1 = 58
step2 = 65
step3 = 72
step4 = 79
step5 = 86
step6 = 93
step7 = 100
dbStep = 0.5
Default values (for stream_speaker settings) were:
step0 = 0
step1 = 29
step2 = 35
step3 = 41
step4 = 47
step5 = 53
step6 = 59
step7 = 65
dbStep =0.5
By contrast, the speakerphone maximum setting is 86, so if these values  are percentages, the navigation volume was 21% lower than the  speakerphone volume.
I listen to the  music player in my car, and when navigating, the turn by turn directions  were barely audible over the music player. The default maximum system  volume setting was 65. The maximum music volume setting was 98. This is  why I had to listen to music at half volume in order to have the nav  volume be equal, even though the nav volume was at max. I hope this  helps and I will be posting this elsewhere to help as much people out as  I can.