If you are looking to do a planted tank on the cheap, I'd highly recommend going low-tech. (plus, it's a bit less maintenance). You might need to cut down on the light a bit, but I'm not very well versed in that aspect. If you can't cut down on the number of tubes, you could just throw in a bunch of floaters, or use some screen or something.
I'm not sure about how to deal with the plants getting pulled up by fish. If you can get them established, something like anubias, java fern, bolbitis, etc. that attach directly to rocks/wood might help. They also tend to be pretty tough, durable plants in general.
If you go low-tech, you really won't need CO2. As to substrate, if you go with capped dirt, I'm not sure the cap is all that important, a lot of people here (and elsewhere) have had good luck with both pool filter sand and blasting grit, which are relatively cheap. SafeTsorb and similar products are also pretty cheap, and have high CEC, but also tend to be lighter (makes initial planting more difficult, etc.).
Maybe try keeping some lettuce clipped into the tank at all times, or some other (relatively) cheap food source, to try and distract the fishes from the plants? I don't know, it sounds like those might just not go well in a planted tank