In PHP è semplice creare una data casuale compresa in un intervallo temporale.
La soluzione è la seguente:
function my_create_rand_date($start_date = '') {
$start = empty($start_date) ? 1 : strtotime($start_date);
$timestamp = mt_rand($start, time());
return strftime('%Y-%m-%d', $timestamp);
}