Tech requirements - I'm guessing running this on a dedicated ADSL2+ line/spare small server isn't going to satisfy bandwidth/processing requirements not to mention the lack of backup
That depend of how much traffic do you spect, the OS, you router, and a lot of variable. The usual problem more than the bandwidth is the router being able to support the amount of connections, so I will recommend some investment in a cisco router for example.
The bandwidth you are looking for is more on the uplink than in the download speed, I have 10 mbps of uplink at home and with two webservers, p2pool, DC++ server, and all the crap my family runs with p2p I never had latency problems, again is also a matter of how you configure the connection.
What do you mean with a smal server? I have a Core2Quad at 2.4 Ghz with 8Gb RAM DDR2 800mhz running two virtual servers and mine and play on it, again without latencies.
Backup shouldn't be a problem, you can set a RAID 1 on the server with two disk of around 250 GB for bitcoind and another RAID 1 with a couple of 2TB disks for the database, at the cost of the hard drives today that means around 400 dolars (going high). Then you can have an NFS to run a backup daily of the whole DB or a differential one daily and a whole one weekly so its faster.
Software - I want to support stratum and GBT and I'm thinking of using eloipool but I'm not sure whether that's possible without a frontend
Here you need to diference, one is the software for the pool and another the frontend.
The pool simply gives you a way to manage the miners that connect to your server, the frontend gives you and GUI to manage other aspects like payments, hashrates, etc, etc. They are usually php websites with some cronjobs to be run on the server to do hashrate calculations, block finds, ...
Whether I can set up as a 'sub-pool' - for instance have eloipool taking and returning work from eligius.st and taking a 1% cut, until the pool hash rate is high enough to run on it's own
This could be interesting, as far as I know the pool connects to your bitcoind to get the work, dont seem very likely that it will allow you to set a subpool, but, as I say, Im not really sure about this one.
Payout methods (must be no risk to operator), and starting without investing (giving away) BTC before the pool finds it's first block.
I would recommend PPLNS or Score as slush pool. Last one will encourage people to continue minning till a block is found.
Should support BTC and LTC
Again shouldn't be a problem. As I explained before you have two components the pool app and the frontend. The pool app is not a big deal, you can have two instances running in two pools with bitcoind and litecoind running at the same time, just be carefull that you dont have the same ports for both of them.
Then you have the frontend that would need to be created to support both currencies, usually the frontends you find around are for BTC or LTC, you can always edit them or create your own.
Im having some network stability problems from a few weeks to now that is being investigated by my ISP (after hitting with the router half a dozen technics asking me if restarted it hehe), but if you want I can set a virtual server on my computer for you to do the test with a little bit more of bandwidth ( I have two 100/10mbps connections, still working in the load balancing).
Hope I was of any help, if you need something else from me feel free to give me a shout