Some questions:
Does this require information to be added to blocks, or can it work today on the existing format?
Does this count number of transactions or their total length? The block limit is in bytes rather than number of transactions, but transaction number can be a reasonable proxy if you allow for some false negatives but want a basic sanity check.
Does this allow for proofs of length in the positive direction, demonstrating that a block is good, or does it only serve to show that blocks are bad? Ideally we'd like an extension to SPV protocol so light clients require proofs of blocks not being too big, given the credible threat of there being an extremely large-scale attack on the network of that form.