You could do it using partition magic, never failed for me, though its not a 100% guarantee.
Here's an example of how'd i'd do it if the partition you need to move data to isnt big enough, this is providing you have ample space on the drive to play with.
http://i65.photobucket.com/albums/h204/t31os/partitions.gif
Figure one is how the partitions may look, of course the scale may not be the same but the concept is.
You'll need to first reduce your data partition to as small as the data will allow, so say you have a 100gb partition with 44gb of data, shrink down the partition to say 46gb to be safe.
This frees up 54gb to extend onto the other partition. Figure 2.
Now move the data across. Figure 3.
Delete the old partition, now empty.
Extend the new one. Figure 4.
Job done...... Thats assuming you can get a copy of partition magic and are willing to try it. Its an option if you'd like to try, but do so at your own risk.