OK, first thing: I assume that your phone has been rooted? Partitioning won't help at all if not. So if not, visit the Desire All Things Root forum and you'll find links to guides on how to do this in the sticky post Desire All Things Root Guide there. You should also read the "root memory" faq, linked in the same sticky post.
Assuming you are rooted and the problem is just partitioning your card:
* Partitioning will almost certainly erase the data currently on the card. So back up everything to your laptop first (including any hidden files and folders, i.e. those whose name starts with ".". Apple are pathetic about this, and don't provide an option to show hidden files in Finder, but there is a way:
Show hidden files in Finder. Or do what I do and use terminal commands.
* If the phone is rooted you will have a custom recovery program (unless you did it a very old-fashioned way). If so, which one (it will say when it starts/at top of screen)? If it is 4Ext recovery you can just use that to partition the card.
* If it is not 4Ext recovery, then it won't do a good job of partitioning. The Mac's partitioning tool isn't very good, as you've found, so our usual suggestion is GParted. If you have access to linux you probably have this already (in the system tools menu of most linux distributions). Otherwise the simplest is probably to create a virtual machine to run it (if your macbook will boot off a usb stick of CD you could try that instead):
- download GParted from
GParted -- Download. The simplest is probably
Download latest gparted-live-0.14.1-6-i486.iso.
- Download and install VirtualBox.
- Run VirtualBox and create a new machine. I selected OS type as Linux.
- I accepted the default size, then to "create a new start-up disk" and accepted the defaults for the following options.
- Having created the machine, I started it. On first run it asks to select installation media, and here I told it to use the GParted iso I'd downloaded previously.
- It will go through a very old-style linux boot, and ask a few questions about keyboard and language preferences in the process.
- Eventually it boots into a simple Graphical User Interface. What you then need to do is connect the phone via usb, fiddle a bit until GParted can see the SD card (/dev/sda will be the virtual machine's own disk space, so don't partition that).
Once you can do that, you can partition the card as described in the
root memory faq (particularly
this step) and the
video guide to partitioning with GParted.
Good luck, and don't forget to back everything up first.