Greetings,
I had my share of such HDD/FlashUSB resizing needs/issues and I usually proceed as follows:
I happen to own Paragon Hard Disk Manager 2010 Server Edition which has a built in "rescue disk creation" function.
Using that, I created boot CDs and Flash USB disks to startup any intel/amd based hardware.
When I boot with the rescue disk I have access to the full Paragon Disk Manager functionality which includes drive partitioning resizing, etc.
I use the resizing function to change my partitions. This version of Paragon is Linux aware and moves things around properly.
To the best of my recollection only once I had problems and I believe it was on a flashdisk for beaglebone black (not pfsense related obviously).
Historically I was successful in doing the same with other commercial software such as PartitionMaster, etc.
If you don't have one of those, you may want to check if they have free versions as "rescue disks". (Paragon and EASEUS websites)
Finally, as a completely free linux product you might want to try bitdefender's rescue disk. I believe they have a gparted version capable of doing the same. I hope I am not mistaken as I haven't used it in a while.
Hope this helps.
Halea