You could try passing the --aggressive switch to git gc and see if that helps:
# this will take a while ...
git gc --aggressive
Also, you could use git filter-branch to delete old commits and/or files if you have things which you don't need in your history (e.g., old binary files).