Knowledge in what fields is necessary to develop an EEG brain-computer interface? I am a computer science student, and as part of my project, I would like to develop a system that changes the TV channel, increases its volume, etc. by just the thought of it. My primary investigation paved the way to EEG BCI.

Which fields should I research in order to develop such a system, and what equipment in general is necessary? As far as I know we need an EEG device attached to head, a transmitter to send the signal to the TV, a receiver at the TV side, and proper processing of signals and feeding to the TV. I mostly need more explanation of the EEG side.
Beyond what you've already listed, you'll need advanced signal processing skills, as so far, nobody has figured out how to get much more meaningful information out of the EEG than broad attentional state (alpha blocking and the P300, and the evoked potentials), and maybe some correlates of motor imagery, though none of these have realistically proved themselves yet.

You will need to clean the signal using techniques such as independent component analysis/ICA and wavelet denoising, and identify some weak correlate of mental activity in the strong irrelevant "background" activity. Approaches regarding the latter fall into two camps, as I've noted above: either try to identify some well-known neuropsychological component, such as the P300, on a single-trial basis; and/or use machine learning to agnostically identify a signal, with Support Vector Machines being en vogue right now as far as I know. I assume the latter part you're already informed about.

Check out MOBILab for some of the leading figures with regards to EEG signal processing, but be aware that the EEG is an extremely noisy measure.