1) i'm not familiar with Dan Egan's book, so i have no idea. Shortly there will be a new version of the wrox book by the core team, that will cover DNN 4.
2) With respect to DotNetNuke there is not much difference between asp.net 2.0 and 1.1, the code base is exactly the same, and most modules are developed under dnn 3.x (most run on dnn 4 too btw). I would start with dnn 3, and upgrade later on to dnn 4
3) unauthenticated users cannot post on the forums, so that should limit spamming somewhat. The next version of DNN (3.3/4.1) will have the option of a CAPTCHA control during logon, thus preventing bots to logon to your site. The next version will probably be release somewhere the next couple of weeks.
4) when using templates that are not targeted towards DNN (the name says it all, if it is targeted towards DNN then it would be called a skin), you will have to create your own skin from the template. For beginners that might be a bit much to ask. You could also check DNN specific skinning resources like www.skincovered.com, www.salaro.com, www.xd.com.au, and probably more. Just do a google search for "DotNetNuke Skin"
HTH
Cheers,
Erik