"replace with newer versions from the archives" is not what's happening.  It seems to replace with identical versions, just from the archives.

On Wed, Feb 26, 2025 at 10:39 AM Philip Kaludercic <philipk@posteo.net> wrote:
Eli Zaretskii <eliz@gnu.org> writes:

>> From: Ship Mints <shipmints@gmail.com>
>> Date: Tue, 25 Feb 2025 15:35:10 -0500
>>
>> As part of my production upgrade to 30.1, I wrote a program to install
>> my local ELPA tree from scratch, and take the opportunity to prune and
>> curate packages.
>>
>> One thing that surprised me, that I didn't notice in 29.4, is that if
>> 'package-install-upgrade-built-in' is non-nil, 'package-list-packages'
>> reports built-ins needing upgrades from ELPA but to the *identical
>> versions* in the 30.1 tree.  I was expecting upgrades to be actual
>> upgrades, not side-grades, as they say.  The reason I didn't see
>> this on 29.4, is that the distro versions were older than ELPA so I
>> was happy to take the upgrades.  This does not appear to be a
>> regression, just a general bug report.
>
> Philip, could you please look into this?

(emacs) Package Installation says:

   If you customize ‘package-install-upgrade-built-in’ to a non-‘nil’
value, be very careful when using commands that update many packages at
once, like ‘package-upgrade-all’ and ‘U’ in the package menu: those
might overwrite built-in packages that you didn't intent to replace with
newer versions from the archives.  Don't use these bulk commands if you
want to update only a small number of built-in packages.

I read this as that OPs behaviour what the option intends to do.