DELETE `p`.*
FROM (
SELECT `FIO_ID` FROM `Phone` GROUP BY `FIO_ID` HAVING COUNT(*) > 1
) AS `p1`
JOIN `Phone` AS `p` ON `p`.`FIO_ID` = `p1`.`FIO_ID` AND `p`.`Number` = :phoneNumber
Либо ставить триггер BEFORE DELETE, выдающий исключение при попытке удаления.