Look, while it's possible to get into an infinite regress situation asking "why?", I think a resonable person can see that "avoid invalid variable references" is closer to the kind of objective I was asking for than "clear all variables defined in a given cell".
If I understand your situation, you've renamed variables and you want to make sure you've done the renaming completely throughout your notebook leaving no dangling instances of the old names. There are two ways I can think of that are much simpler and more reliable than trying to parse cell data. First, just use the find/replace dialog. This won't clear the old symbols, but it will make sure you don't have old instances of those symbols hanging around, so there should be no problem. Second, change the symbols where they're defined, then restart the kernel (or just clear all of the symbols in the relevant context, probably Global). Now trying to evaluate any expressions using the old symbols will fail. Also, the old symbols will display in the undefined format, so you can see them by inspection.