Вы хотите, чтобы копия находилась рядом с копируемым элементом (обратите внимание, что теперь у вас есть дубликаты идентификаторов, и вы больше не можете отображать данные в jsx без предупреждения).
Для этого можно использовать команду Reduce. :
const handleDuplicateItem = id => {
setState({
...state,
formList: state.formList.reduce((result, item) => {
if (item.id === id) {
//push an extra shallow copy of the item to result
result.push({ ...item });
}
result.push(item);
return result;
}, []),
});
};