Are window handles (HWND) unique, or do they ever get reused?
Yes. There are only a finite number of values a handle can be represented by, so Windows has to reuse them eventually.
Once a handle is closed, it is gone, you can't do anything with it, it doesn't exist, and you shouldn't even look at it.
And if you subsequently open another handle, then it is possible that Windows will reuse the handle value.
By the pigeonhole principal, yes, they can't be unique.
Due to the compatibility with 32-bit processes (WoW64), handles cannot use the entire 64-bits even on 64-bit OS -- think of a 64-bit process passing a handle to a 32-bit child, or getting a handle to a window opened by a 32-bit process. This makes their true space pretty small, and thus reuse very likely.
I would advise you to make absolutely no assumptions about handle values.
You shouldn't have to think about concrete handle values for all practical purposes. A handle should be considered an opaque placeholder for something else. You can pass the handle around to refer to something (e.g. a window) without having a reference to the real thing, but you shouldn't ever have to look at the handle itself. The fact that it is a numeric value should be considered an implementation detail, ie. not important (unless maybe you do some kind of low-level systems programming).
That being said, I'd support @jalf's answer: Handle values could get reused. If I had to make any assumption at all about that, I would assume that a handle value could get reused anytime.