Il problema non è PHP, è il server, se sei su Linux è normale che sia così, i sistemi Unix sono case sensitive jpg != JPG != Jpg != JPg ecc...), se fossi su Windows non ci sarebbero problemi.

L'unica soluzione è rendere coerenti le estensioni tra DB e file.