Вы открываете с доступом для чтения, а затем даете команду записи> Вам нужно открыть с доступом для чтения / записи
$handle = fopen($filename, "r+");
В отношении ошибки в fread, попробуйте
if (filesize($filename) > 0) {
$content = fread($handle, filesize($filename));
}