I would be very interested to know which PIC chip you are referring to and I presume the comparison is with the Atmega328. Also, what "gobs of additional resources" does it have?
I can't say I have noticed the existence of a harvard architecture so I would also be interested to know how I would notice if it wasn't there.
If you haven't noticed the Harvard architecture messiness on AVR then you are not storing any constant data in flash.
In the AVR using gcc you have to use constructs outside of the normal C language to access the flash because it is a separate address space.
(That is what the all the PROGMEM stuff is for).
Not only is this slower than having direct access to the memory space but it requires using access routines and really muddies up
your code because you can't just do things like declare const structures and access the data members directly from flash.
Bottom line is Harvard Architecture makes the internal h/w simpler and often faster because of
that simplicity but often makes some of the s/w more complex, particularly code that has const data.
Dealing with const data messy and often a pain to port to other platforms because the code to deal
with it is often proprietary to that chip. Sure you can wrap things in portability macros,
but it still a pain and can often slow down the non Harvard implementations because the code
can't be written to directly access data structures in FLASH.
Other AVR compilers may be able to better hide the alternate memory space accesses
required on a Harvard Architecture,
but the extra overhead of accessing these memory spaces will still be there.
As far is resources go, have a look at the links I provided.
The PIC chips used in the standalone breadboards are PIC32MX250F128B
which is a good comparison for a atmega32 as both are 28 pin DIP and
they are in the same price ball park for hobbyist (under $5 quantity 1)
and both are relatively easy to hook up on a protoboard or breadboard.
The atmega328 AVR is not even in the same class as the newer PICs.
As far as a few high level additional capabilities:
The PIC is a 32 bit processor vs an 8 bit AVR.
The PIC can be clock much faster (40mhz vs 20mhz)
It has 128k FLASH vs 32k FLASH, 32k RAM vs 2k RAM.
Capabilities not in the m328 AVR:
multiple of these ports: SPI, UART, i2c.
DMA capabilities and a realtime clock.
Native USB support.
With native USB support you don't even need an FTDI board/chip or
a PICkit to update the firmware, assuming the chip has the
bootloader pre-burned into it.
set and clear registers. On AVR you have to use special instructions
on the desired register to get atomicity and it only works on a single bit at a time, and even
then it can only be used when the bit is known at compile time.
It means that on AVR, there is additional overhead to ensure atomicity
when there are multiple bits involved or the bits are not known at compile time.