Wie in meinem Kommentar erwähnt, müssen Sie die Unterauswahl nicht ausführen, um auf die Zeile zu verweisen, die dazu führt, dass ON DUPLICATE KEY ausgelöst wird. In Ihrem Beispiel können Sie also Folgendes verwenden:
INSERT INTO `item`
(`item_name`, items_in_stock)
VALUES( 'A', 27)
ON DUPLICATE KEY UPDATE
`new_items_count` = `new_items_count` + 27
Denken Sie daran, dass die meisten Dinge wirklich einfach sind. Wenn Sie sich dabei erwischen, etwas zu kompliziert zu machen, was einfach sein sollte, dann machen Sie es höchstwahrscheinlich falsch :)