Courage is Cerberus
Courage is a scared dog with one goal in life: do whatever he can to protect his masters (the kind Muriel and the grumpy Eustace who hates everyone and everything) from all the oddities and evils that plague his home in Nowhere. No one is really sure where Nowhere is. All we see of it is that its a barren, hellish wasteland. Whenever the monster of the week appears, we see Courage saving Muriel and protecting Eustace's house from being destroyed, despite it being pretty worthless to begin with. Muriel always see Courage with another head or Courage expresses his emotions or warning messages by altering his body, giving him multiple heads.
Courage (Cerberus) is a guard dog that stays in Nowhere (Hell) to protect his home, keeping mankind (Muriel) safe from the evils of the Underworld (Le Quak [greed], Naughty Fred [murder], Katz [hate], ect.). His master, Eustace (Hades) will rule over and hate all that is Hell.
From a Dog's Perspective
The second theory states that there aren't actually any monsters, and that Courage only thinks there are, because he was never taken on walks. This would explain why Eustace would seemingly not remember what happened to him in a prior episode.
Muriel and Eustace Were Puppets
In the last episode of season one, Eustace and Muriel were turned into puppets which we saw Courage puppeteering while laughing maniacally. Some have noticed that it is after this point that the show takes a very bizarre turn, even more so than it was before, and theorize that this is because they remained as puppets with Courage acting out complex plots with them to pretend that they are still alive as he sinks further into a delusional state brought on by starvation and isolation .