Okay, so how about working it the other way around.
Inbound mail that matches the ACL just gets processed via relays that have *zero* DSPAM configuration, but are automatically marked as, for want of a better expression 'suspect'.
Mail that doesn't match the ACL gets processed in the usual way.
This would turn the tables on the processing time. Stuff from dynamic IP's would require considerably less processing on the mail platform, the assumption being that it's already spam (or un-whitelisted mail servers).
This would allow you to start to create your own whitelist of remote mail servers, reduce the load on the mail platform quite considerably (?) and allow you to work towards an approach where you do finally block mail with a 550 based on the ACL - after spending maybe a couple of months building up the whitelist so that the transition would be much less painful.
I appreciate that with a hardware investment required, that this isn't necessarily the ideal way forward. It does have some positive options though:
1. It reduces load on the mail relays, albeit at the expense of some load on the balancers
2. It ensures that no legitimate mail is immediately blocked
3. It compartmentalises the DSPAM processes onto fewer relays (which will be handling a much lighter load of mail)
3. It reduces the requirement for running the DSPAM process on the relays that receive mail that matches the ACL
4. It allows your customers to participate in building up the whitelist for the eventual (and inevitable) move to 550 rejection based on ACL
5. No mail will be falsely rejected!
Again, much thought straight off the top of my head again

B.