If you can spare $30, then you can't beat Beyond Compare, which can certainly diff archives, and probably more archive formats than any free tool.
Archives are files that contain other files, such as .zip. Beyond
Compare displays them as folders, with a zipper icon, but by default
treats them as files when copying or comparing them. Once you have
expanded the archive by double-clicking on it, the files within will
be compared. Many of the formats support both reading and writing, so
you can use all of the usual file operations on the files within the
archives, including comparing the content, copying, renaming, etc.
Common archive formats
7z archive (.7z;.7z.001)
BZip (.bz;.bz2)
BZipped Tar (.tbz;.tbz2;.tar.bz2)
Beyond Compare Snapshot (.bcss;.bcs)
Compiled HTML Help (.chm)
Deb archive (.deb)
GZip (.gz)
GZipped Tar (.tgz;.tar.gz)
Microsoft Cabinet (.cab)
RAR (.rar)
Rpm archive (.rpm)
Tar (.tar)
Zip (.zip;.zipx;.jar;.ear;.war;.bcpkg)
once inside your archive, you can compare text or images or office files or PDF or data or even raw hex.
Try a demo and see if you are convinced.
If not, @Chop's suggestion of WinMerge if probably the way to go (although don't forget to look at Kdiff3)