Как сказал человек выше, для начала вам нужно изменить значение самого setArr во втором компоненте, а в первом компоненте установить useEffect на отслеживание arr, и как вы и сказали, уже внутри useEffect перебором массива, по определенному идентификатору искать именно тот объект, который вам нужен и уже делать там то, что вам нужно:
useEffect(()=>{
if (arr.length > 0) {
arr.forEach(element => {
if (element.itemId === 23 && element.text === true) {
setBtext(false);
}
});
}
},[arr])
И использование memo в вашем случае избыточно)