Nope, the Lock or Freeze all the layers which are not contained in the block - would still leave the issue of external entities on the same layer(s) as internals.
Or can I check wether selected objects belong to the block I'm editing?
Well, all the objects inside the block would have a 330 code linking to the Block Record's ename. But that's only correct while "not" in RefEdit mode, because while inside RefEdit all the stuff contained inside the block is temporarily changed to be inside of the *Model_Space block instead.
Even their enames / handles change due to RefEdit. So you can't even try using a filter for only the handles (code 5) of those objects inside the block definition.
Though what you can do is save the value of entlast just before RefEdit starts (perhaps reactor or redefining the RefEdit command), then you can step through all the temporary "new" objects using entnext to get the "internals".