I'd solve it in the good old-fashioned way.
mount /dev/ada1s1 /mnt
dump -0a -f - /dev/ada0s1 | restore -rf -
gpart bootcode -b /boot/mbr -p /boot/boot1 ada1
This makes a fresh filesystem, mounts it and enters the destination directory because restore needs to work there. It copies the entire file system with the classic backup ...
First you need a backup copy in case something went wrong.
You need tools for filesystem you use, whatever it is.
First you need a program which will logically shrink your partition in filesystem you use.
I did such thing few times before with ntfs and ext3 but idea is the same for every filesystem.
I assume that your image is image of partition (sda1.img),...