Standalone 328 - 8mhz, 3,3V problems

I have build a breadbord Arduino according to this tutorial

Everything works fine with a 16 Mhz crystal.

Next step was to make it run at 8mhz using 3,3 Volt, so i changed the crystal to 8mhz

I can burn the bootloader using Arduino pro mini (8 mhz 3,3 V) with Atmega328
I can upload sketches

But only if I use 5V

If I use 3,3Volt I get the following error

avrdude: verification error, first mismatch at byte 0x0000
0x0c != 0x00
avrdude: verification error; content mismatch

I have checked the fuses using avrdude:

avrdude: Device signature = 0x1e950f
avrdude: safemode: lfuse reads as FF
avrdude: safemode: hfuse reads as DA
avrdude: safemode: efuse reads as 5

I am using USBasp programmer, but i have tried Arduino as Isp with the same result
it IS a 328P-PU I am using

Any suggestions?

Do you have AVCC and the second GND connected?

Yes

GND pin8 and GND pin 22 connected to ground
VCC pin 7, AVCC pin20, AREF pin21 to +5v (+3.3v)

I have also disconnected my LED on pin 13, because of the warning "Avoid lowimpedance loads when using the ICSP header"

but i have tried Arduino as Isp with the same result

Are you adjusting the voltage level from the 5 V on the Arduino side to 3.3 V on the target side?

Are you adjusting the voltage level from the 5 V on the Arduino side to 3.3 V on the target side?

I must admit that I didn't think about that, so I will follow your method given here:
http://www.arduino.cc/cgi-bin/yabb2/YaBB.pl?num=1258947348

use 5V when programming, that seems to be the easyest way. My project is to make a datalogger with SD card, and the 3.3V is a way to avoid the level shifting.

Thanks for the advice