How and why does "exec false" close the terminal?

exec false is replacing the current shell by the execution of the command false (here not the shell builtin but /bin/false or whatever false executable that comes first in the PATH) which quickly exits. If the shell was the topmost process running in your terminal emulator, there are no more processes running inside it so the terminal emulator is closed.

This is a an acceptable alternate way to close a terminal, just like would be many similar commands:

exec true
exec sleep 0
exec echo
...

See also: what-does-an-exec-command-do