Why is MySQL caching data on our dynamic PHP site?
Nothing that MySQL does will lead to stale data -- not the Query cache, not SQL_CACHE, not the key_buffer, not the buffer_pool.  The problem must be outside MySQL.