<p>What is the best way to do cross-platform handling of hidden files?
(preferably in Python, but other solutions still appreciated)</p>

<p>Simply checking for a leading '.' works for *nix/Mac, and file attributes work on Windows. However, this seems a little simplistic, and also doesn't account for alternative methods of hiding things (.hidden files, etc.). Is there a standard way to deal with this?</p>

"Is there a standard way to deal with this?"  Yes.  Use a standard (i.e., POSIX-compliant) OS.
Since Windows is non-standard -- well -- there's no applicable standard.  Wouldn't it be great if there was?  I feel your pain.
Anything you try to do that's cross-platform like that will have Win32 oddities.
Your solution is -- for the present state of affairs -- excellent.  At some point in the future, Microsoft may elect to write a POSIX-compliant OS.  Until then, you're coping well with the situation.