Phone borked after clearing dalvik cache
Never mind. I managed to uninstall some apps to free up some space and then after rebooting, I was able to use Link2SD to move the Dalvik Cache, which gave me about 230MB free instead of 12MB!

I still had some problems so cleared the Dalvik cache again but that put it back on the Internal Storage and used up all the free space again, so I had to uninstall a few more apps and move it again but at least it's usable now. I'm getting a new phone this week anyway, so I won't waste much time getting it perfect, as I'll just wipe it and reinstall a clean ROM before giving it to a friend.