I narrowed down the sleep issue to the BT USB plug. If I unplugged the cable it would sleep/wake normally*. I found some posts that said if it is plugged into an "external" USB port then it must be configured to show as internal, otherwise, it will cause sleep issues. So I went through Hackintool, following the help instructions, and added a few PCIID kexts that it recommended for the specific device, marked the BT USB port as internal, and added the SSDT that it exported. I also removed some other SSDT that had USB in the name (maybe unnecessary, just trying things). Right now I have the USBPorts kext and the Hackintool SSDT installed (USBinjectall removed). The instructions said to do one or the other, but I have not tested removing the kext yet. I removed the SSDT and it stopped sleeping normally, so I believe I only needed the SSDT.
This may only be helpful for people with an SFF and external BT usb header plug.
* Some weird wake behavior (brief loading bar and multiple display refreshes) but works.