Получилось сделать.
Так как у нас есть уникальный ID, то сделали следующим образом:
Отлавливаем все input с одинаковым name и присваиваем им уникальные значения:
var o = new Object();
$(this).find('input, textarea').each(function () {
if ($(this).attr('name') == 'FOTO[]') {
o['PASSPORT_'+$(this).attr('id')] = $(this).val();
}
else {
o[$(this).attr('name')] = $(this).val();
}
});
А потом уже объединяем эти данные в массив по маске, перебирая наш $_POST в php-файле:
$result = [];
$i = 0;
foreach($_POST as $k => $v){
if(preg_match("/^PASSPORT_file-doc\d+$/", $k)){
$result[$i] = $v;
$i++;
}
}
$_POST['FOTO'] = $result;