In the future, you should look into using LVMs for your partitions.
I ran into a similar problem recently where my /var needed to be increased - I was able to run a simple lvextend -L+4G /dev/myvg/var --resizefs
to grow my /var by 4 gigabytes.
Before I was using LVMs though I used a gparted live disk a lot
Cor blimey