While I haven't used Vista's partition tools, I would assume it's not much different than any other partition tools. You simply cannot reclaim space at the beginning of a partition without a full reformat of that partition.
It would be best if you would create a third partition using the remaining space (make sure it is "Extended/Logical" and not "Primary"), transfer all data from the current data partition to the new partition, then delete the old partition. You should then be able to extend the primary partition using the space left behind from the old data partition.
| Primary | | Data | | Free | - Current partitions
| Primary | | Data | | New | - Create New (Extended/Logical) partition
| Primary | | Data | | Data | - Copy Data to New partition
| Primary | | Free | | Data | - Delete old Data partition
| Primary Resized | | Data | - Resize Primary partition
If you have an issue with your current data being larger than the available space, you would then be better off completely deleting that partition (backup files first). Resize the primary partition then create a new partition for your data.
| Primary | | Data | | Free | - Current partitions
* Backup Data files *
| Primary | | Deleted/Free | - Delete old Data partition
| Primary Resized | | Free | - Resize Primary partition
| Primary Resized | | New | - Create New (Extended/Logical) partition
| Primary Resized | | Data | - Copy Data to new partition
As usual, backup all important data before doing anything.