Bluetooth sockets not closed

I've run into a problem on certain Android platforms where if a Bluetooth socket is open when the app crashes or is killed by ADB (or by the user with one of those app killer apps...) the socket cannot be reopened the next time the killed program is started. Trying to open it just results in an IOException. The only way I've found to clear it is by rebooting the device. Disabling and enabling BT does not work. I found one related question on SO, but no solution.