Sounds like you have stuck ports.
You can try upgrading to something like 12.4(22)T to see if this resolves it.
Looking at your custom disconnect tones, you may want to modify these parameters to something like this:
voice class dualtone-detect-params 1
You can also try reducing your disconnect time:
timeouts call-disconnect 1
timeouts wait-release 1
wait_release is generally a bad sign, and is indicative of a stuck port.