Yes, it can be done using Firerat's Apps2EXT script.
*Solved*CM6 on motoDROID apps2ext firerat's method. does it work? - CyanogenMod Forum
Read this thread, and then read the thread linked on the bottom of the first post.
This should work as long as you're running a ROM that uses the /system/etc/init.d/ scripts at boot.
This requires you to flash a compatible kernel (i.e. slayher's), as the stock cyanogen kernel does not allow you to mount mmcblk0p2 at the moment.
To test if your current kernel supprts this, open Terminal Emulator and type:
su
mount -o rw /dev/block/mmcblk0p2 /sd-ext
If no errors come up, then it worked and your kernel supports mounting mmcblk0p2.
At the moment I'm running a MIUI ROM on my Motorola Droid and have Apps2EXT working flawlessly on the stock 16GB card, 512MB EXT partition and a 32MB swap partition running swap by way of Swapper 2.
Enjoy. Post back to let me know how it worked for you or if you need any help.