Not that it's any help, but cpu-z will determine ramsize by checking the spd-data on the SMbus. This means it can detect ram that is present but not activated.
For now that is all I can comment, will concider your issue and if I think of something I'll pop back in.
- did you buy all 4 at the same time or got one kit later on?
- do the spd data you can see in cpu-z match for all sticks?