Hola,
Cita: En el .h necesito incluir el .cpp porque ahi estan las funciones para hacer los prototipos
Hace mucho que no programo en cpp, pero eso me "daña" los oidos.
En los .h no debes incluir ningun cpp. Si lo piensas, estarias incluyendo el .cpp en todos los .cpp donde incluyes el .h.
Y si mal no recuerdo, no es necesario la definicion de la funcion para hacer la declaracion (que es lo que tu llamas prototipo, si no me equivoco).
De todas formas, quizas te pasa porque tienes el include .cpp (me duele!!!) fuera del la armadura ifndef (sin ver el codigo, es dificil afrimarlo).
Pero mejor que quites el include .cpp del .h.
Suerte.
PD: Quizas no te he entendido bien.