а через что загружаются или куда выводятся? По сути ссылка - просто строка в БД. обработай ее заменой пустых символов в строке (str_replace(' ','', $str);). Либо перед загрузкой в базу, либо перед выдачей на морду (но второй вариант лучше не надо, производительность в теории когда-нибудь выйдет из чата).
А вообще нужно идти на шаг назад и искать откуда там пробел в произвольном месте. Название картинки при загрузке на сайт генерируется? При отправке картинки на сервер сделай обработку названия и замени все кириллические символы на лат. и пробелы на нижнее подчеркивание "_".
PS: а еще так подумал... а это точно пробел? не может быть так, что это изначально был перенос строки или еще что-то? Но я бы копал в любом случае в сторону точки загрузки, а не выдачи картинки, 99%, что вся вакханалия идёт оттуда.