Actually, if it were so important it WOULD have been done. I suspect that the issue is not lack of a good solution, but lack of a good problem. The behavior you propose requires a lot of kernel cleverness, including make the inodes seem to go away, so the count is "right" for what the user sees.
DC> Easily doable in userspace, why bother with kernel programming
In userspace you can't automatically delete the files when the space
becomes needed. The LD_PRELOAD/glibc methods also have the
disadvantage of having to figure out where a file goes when it's
deleted, depending on which device it happens to reside on. Demanding
read access to /proc/mounts just to do rm could cause problems.
Userspace has had 10 years to invent a good solution. If it was so
easy, it would probably have been done.