I’d echo @slenaerts here – try removing doubles first and then deleting the faces (but not edges or vertices) for any overlapping area. My guess is that somewhere along the way you accidentally used F (make edge/face) instead of J (connect) to connect two vertices, or maybe it was something else entirely. Either way, deleting then re-connecting one area at a time should fix whatever the problem is.