1. Just about any web based programming will work. Options include but are not limited to PHP, ASP.NET, Classic ASP, Perl, Java.
2. Yes apps which are written in those languages can be hosted on Windows and Linux web servers.
4. Things like GnuCash would be integrated via the web app not via the database.
5a. Sure, I suppose so. Not really sure why you would want to do this.
5b. Any of those three database platforms would be fine for storing the data.