Some hints provided by WarnerLosh.
Strip your kernel to the absolute minimum that will boot. Usually this is no network, and just ata/ahci and syscons (and the usual non-optional optional drivers).
Try to suspend/resume with this. If it doesn't work, you are going to have some fun tracking it down since it may be a video card issue.
Add drivers back one at a time until it fails. That's your driver that's bad.
Confirm this by mixing and matching until you are sure it is this driver every time.
Then you fix that driver's suspend/resume code.
From my experiences, problems have been 80/20 video/something else.