Paul
You have a valid point if the spid is like a zombie process and is not reported by usual tools.
Normally sysprocesses, syslocks, syslogshold are the three main system tables I will go looking for an active spid.
Did you also check some of the MDA tables like monProcess, monProcessActvity and monLocks ?
dbcc dbreboot does provide you the SPIDs using the database but this should be used as a last resort and with caution.
HTH
Avinash