i can anwser number 2.., i've created various games using only freeware aside from buying Dark basic classic
I used Anim8or for objects
Paint for sprites, well i used to, until i created a sprite generator program ^-^
ahmm you can get music / sounds as freeware of various places in the wide internet. You can also get free 3d models of the internet, just be careful read the licence agreement.
ahmm aside from that to make a "decent" game it would require hard work and experience. they didn't build rome in one day
---------
Basically to create a 3d game, you need a world you can either create that in a 3d modeler program like Anim8or or you can use a matrix.
Next buildings / random objects can be easily created in Anim8or or you could try your luck at using box's and cones heh
Special effects you can create your own using even the basic Paint program O_o
Characters again can be created in Anim8or but you'll have to animate them in DBC using the limb commands. Or you could use 3ds Max or any other character animation software out there... but sadly that one costs money...
i like to ramble on ^-^