1) You should be able to code anything - recursive or not - without resorting to macros. If and when recursive macros become available, I suspect their use will not be a "beginner's question".
Recursion can be difficult to get right:
recursion error: see recursion error
... but you shouldn't need macros to do it.
2) I don't know how the executables in the macosx directory are produced, nor how you would compile 'em yourself, but there "shouldn't" be any difference. (note that "everything" and "install_everything" are targets to "make" - these may produce more than what's in the .zip file... more documentation formats, e.g.)
3) As Christian predicts, I suggest Dr. Carter's tutorial, although it is not specifically targetted to MacOSX. I think the examples could be made to build on Mac with some minor tweaking - the "Linux" package might be easiest(?)... mainly a question of where/whether underscores are used. If you try it and have trouble, holler - we may be able to help(?).
There's also a "BSD Developer's Handbook":
http://www.freebsd.org/doc/en/books/developers-handbook/It has a chapter on x86 assembly language that looks quite good. I don't know how close MacOSX is to "regular BSD", but it may be some help...
Best,
Frank