The fewer communication protocols you have to deal with, the less code you will need to write. I would choose I2C because it allows several different devices to share the same communication bus- the first byte transmitted is an address header. The CO2 sensor does not have this, so it will have it's own dedicated pins and won't have to share.
I recommended getting DIP because it is the largest. The pin spacing will be easier to work with than surface mount. It will work with solderless breadboard for experimenting, and common protoboard types for construction- no need to make a PCB. Plastic is cheapest, and the only material likely to be available in samples.
The clock chip "ISL1208IB8" from Intersil is a surface mount package. Maxim has some in DIP.
As for the microcontroller, don't get anything with a "C" in the middle of the name. Be sure there is the letter "F" after the first two digits. The "16x74" is good, but why not ask for the best available. The '777 has twice the program space, six more analog inputs and master I2C built in. The '877 also has twice the program space, the same number of analog inputs- but ten bits of resolution, master I2C, and has 256 bytes of EEPROM (non-volatile). If available to you, Microchip will allow three of any device and up to five devices per sample request.
The optoisolators need not come from Farichild specifically, they're common enough that lots of companies make them. You'll need one for every device you want to control power to (fan, light, CO2 valve, heater, window flaps, water pump, stereo). You'll want to be sure the output can handle more than double the voltage that powers the devices- look for 400V ratings. The current will only be good to 100mA or so, don't worry- these will be controlling beefier TRIACs (which you'll have to select as well). Another option is to get SSRs (solid state relays), which will be more spendy but take care of some issues.
MPlab is available at http://www.microchip.com/stellent/idcplg?IdcService=SS_GET_PAGE&nodeId=64 . It will let you run simulations of your programs and debug your code among other things.
ICprog is available at http://www.ic-prog.com/index1.htm , but may be of little use to you if you don't use a programming module it was written for. I looked on Ebay, and the programmer I was talking about isn't there anymore. I guess the guy ran out of them. A google search for "jdm programmer" should get the plans for one. They're simple enough, and don't need to have a PCB. Ugly is okay for these- mine sure is.
Programming ability comes with practice. I figure you'll have to spend some five or ten hours reading the data sheets and looking at other people's code, then you'll have enough to write a program to blink an LED. Once that much is done, you'll start writing more stuff. You'll test it, debug it, pull out some hair. This is a big project and you'll probably take several months to do it because you're starting at ground-zero, you're making the tools you'll need to work with.