Disclaimer: I've never used FileVault.
This came up on the Apple Discussion Boards about a year and a half ago. From what I understand, the issue is that while there is free space, the data is still spaced out along the whole FileVault image, and needs to be compacted before being able to free up the space.
What you need before you start:
1) Filevaulted user account ( user )
2) Drive Genius application by Prosoft
3) A second admin user ( user2 )
4) Three hours (depending on the Filevault‘s size)
What you need to do:
1) Log in as another admin user
2) Open „Terminal“.
3) Navigate to the user‘s folder:
cd /Users/ user
4) Change filevaulted folder‘s and subfolder‘s permissions:
sudo chown -R user.sparsebundle user2
5) Rename sparsebundle file:
mv user.sparsebundle user.dmg
6) Open user.dmg with Drive Genius.
7) Defrag mounted image.
This will take a while depending on the actual size of the sparseimage.
8) Close application and unmount image via Finder or mark mounted folder and press „cmd + E“.
9) Rename image:
mv user.dmg user.sparsebundle
10)Change permissions:
chmod -R user.sparsebundle user
11)Log out current user ( user2 ).
12)Log in user and log out to compact the Filevault‘s sparseimage.
I'm assuming you can use any utility you have to defrag the drive (e.g. iDefrag) in place of Drive Genius.