... can't just wait a few ticks because it could be stuck there a long time if the belt is backed up.
I would guess that the case where the last ore is left in the miner but the belt is full and cannot eject is a rare one; just getting to the point where there is one ore left underneath the miner generally means that there was space on the belt for all the previous ore that was ejected..
In my opinion, waiting a few ticks before marking to deconstruct, at the worst case, will be exactly the functionality that currently exists (one ore left in the miner); but if given the case above, the majority of the time (non-rare cases) would no longer have an ore in the belt. You shouldn't have to check to see if there's an ore there or not; just give it time to try to eject..
Even if the full belt (cannot eject) case happens 20% of the time, that means 80% of the time there won't be an ore in the miner. Right now 100% of the time there will be an ore in the miner.
Don't let perfection be the enemy of good enough. :)