Lo que te han contestado es acertado.
Ten en cuenta que cuando realizas una peticion desde Ajax.Updater te traes "contenido" (html, javascript, json) que no se va a "evaluar" hasta que no se recargue en c1, es decir: es como si c2 (por muy escondido que lo pongas) terminase siendo includes de c1, al menos los trozos que te traes.
Es sencillo de entender. Cuando tu haces una petición por Ajax.Updater tu te traes un contenido de c2 a c1 e independientemente de donde esté el contenido debe de ser "compatible" llamemosle así para que encuentre la ruta correcta de tus imagenes puesto que tu estás en c1 y no en c2 (fijate la url de direccion) y lo que te traes es contenido, da igual que tenga tags que no las tenga, es solo contenido que visualizarás en el recurso que estas recargando en c1.
Como añadido, si tu invocas una imagen dentro de ese texto como src="imagen.jpg", no le estas garantizando un lugar fisico por lo que el sitio donde va a a buscar es en la ruta en la que estas en ese momento (c1) es decir, lo que quieres que haga Prototype automático no tiene sentido.
Para trabajar como quieres tienes que estudiar primero el problema antes de plantear la estructura de c1 (y de c2), para que no te ocurran estas cosas a mitad de proyecto, si piensas un poco verás que no es dificil de solucionar, y por supuesto pasa por utilizar rutas absolutas (en tu caso creo que necesitas que se pueda peticionar los trozos de html desde c1 y c2 si mal no entendí)
La verdad no me parece correcto, me da la sensacion que metes todo un html dentro de un div y eso no es válido.
http://www.librosweb.es