Here is a guide to the method that worked for me. I am not responsible for any loss of data on your phone or PC as a result of following this guide. Read the steps clearly and understand them BEFORE you do anything. Failure to understand the steps involved could see you wiping data from your PC's hard drive with no warning messages to tell you what you are about to do. You have been warned!
Firstly, I couldn't get Partition Wizard for Windows to work. If anyone else has been successful with it please let me know and I will update this post.
Before you start, BACK UP all your data from the SD card. It will all be erased from your SD card during this process.
Although this works on a phone which has already been flashed with an APPS2SD+ compatible ROM. I strongly suggest starting with a freshly flashed ROM with no apps installed before doing this to ensure ALL additionally downloaded and installed apps are installed on to the partition, leaving the maximum possible storage space remaining on your phone.
Here are the steps....
1. Download a copy of GPARTED-LIVE from here. Use your favourite CD burning software to burn the image to CD. The image is bootable so make sure you do not leave the CD as open session when you burn it. This is the software we will use to partition the SD card later on.
2. Start with a freshly formatted SD card with a single FAT32 partition. This can be created using whatever tool you prefer. Use the default cluster size setting. I use the Disk Management tool in Windows under Administrative Tools in Control Panel. You can perform this step by inserting the SD into your PC or mounting it on your PC via the phone.
3. Once formatted with a single partition, insert the SD Card into the phone, disconnect the phone from the PC if it is connected. You may find depending on your rom that the card is recognised as damaged. Don't worry.
4. Format the SD card again using your phone. This is done via SETTINGS - SD & PHONE STORAGE. The SD Card should now mount as normal and your phone should report "Preparing SD Card".
DO NOT COPY ANY FILES OVER TO THE SD CARD YET. Android will have copied over its standard files after formatting so do not delete these, but don't add anything else yet.
5. Once the SD card is formatted and prepared, unmount the SD card and remove it from the phone and insert it back into the PC. You may also connect it to the PC via the phone. If you are using the phone to connect it to the PC at this stage I highly recommend booting into MAGLDR and selecting the Mass Storage Mode option to connect it to the computer. This ensures Android will not try and access it while we are partitioning it.
6. With the SD card now recognised by the PC, reboot your PC from the GPARTED-LIVE CD you burned in step 1. This may take a while to load depending on your PC. Follow the on screen prompts until GPARTED loads correctly.
7. With GPARTED now loaded, select your SD card using the selection in the top right hand side of the GPARTED window. Ensure you have selected the correct storage device by ensuring the capacity is reported correctly. BE VERY CAREFUL NOT TO MES WITH YOUR COMPUTERS HAR DRIVE!! If you are not sure at this stage, please do not proceed as you risk wiping data from your PC. GPARTED will not warn you if you are about to damage system files as you might expect it to.
8. Once selected, you should see a single FAT32 partition displayed with a chart which span the top of the window. Click on "Resize/Move" and drag the slider from the RIGHT across to the LEFT to create an area of unallocated space the size you wish to use for your apps. 1GB should be enough in most cases. It is very important to make sure that the FAT32 partition appears IN FRONT of the unallocated space. Once satisfied, click OK.
9. Right click in the unallocated space you created in the chart and click "Create". A new dialog box should appear. Modify the settings so that the partition is set to "ext4". Leave the cluster size set to "default". Click OK.
10. Back in the main GPARTED screen, you should now see two partitions in the chart, the first being your original FAT32 partition and then to the right is your new EXT4 partition. Click "APPLY" and the changes will be made to the SD card. THIS IS IMPORTANT as no changes are made to your SD card until you click apply. If you miss this step, you will have to start over from step 6 again.
11. Once changes are reported as completed, shut down your PC and remove the SD card. Insert it into your phone and boot the phone. If you connected your SD to the PC via MAGLDR, press the power/hang up key to return to the main menu and choose to boot from NAND.
Once the phone is booted (may take a little longer than usual) go back to SETTINGS - SD & PHONE STORAGE and you should see your phone's available storage reported as around 20-40MB less than the total storage capacity. This will vary between different ROMS. Don't expect it to read any higher than it did before you did this if you haven't installed any apps yet.
Check to see that your SD storage is reported as the correct size corresponding with the new size of your FAT32 partition.
Now go ahead and install your apps. You will notice that the phone storage capacity does decrease as you install apps, but the next time you reboot, it should jump back up again. That's what happens on my phone anyway.
Once you are satisfied that all is well, you can connect your SD to the PC again and copy across your data to the FAT32 partition.
Another thing to note is that you don't need to format the EXT4 partition when changing ROMS. As it only stores the applications, when booting for the first time with a new APPS2SD+ supported ROM, it will automatically show up with all your apps and widgets installed. Preferences and widgets will need to be reset however.
I hope this guide helps. Thanks again to all the amazing developers here at XDA who make all this possible, as well as the wonderful community of volunteers and members who keep this show running.