Is it possible to which flavor of UNIX a machine is running (AIX, HP-UX, etc.) without using uname command? If so, what other method/command is used to determine this?
uname would be the almost universal command for unix/linux based systems. I wonder why you want to avoid to use it. So, if you discard "uname" we would need to concern with Unix specific comands, such as "lsb_release" from most of recent Linux distributions or cat /etc/*-release. prtconf would also help to identify in some Unix. Some Unix systems, such as AIX, come with this info in the "/etc/motd" too, if not changed. Again, trying to avoid to use uname would put you only in situation of uncertainty and limitations.
EDIT: You can also do "cat /proc/version" which will work in many nix.