I've just performed a test here, to be sure.
The transfer must be done in several steps.
===
First, let me just rephrase what you've tried so far (at least, what I've understood, so please correct what is not accurate).
Situation 1
* 'Catalog number' was stored in MB database only.
Situation 2
* You created (via Preferences -> Tags (1) -> [Define New Tags...]) a new custom tag named 'Catalog number'
* In Preferences -> Tags (1) -> custom tags, for 'Catalog number, you switched from 'Save to MusicBee database only' to 'Catalog number', and save.
=> MB automatically rescanned your entire collection and wiped 'Catalog number' in its database for all the tracks.
====
Now, what you must do (tested here with success).
Make sure you start again from Situation 1 (after restoring the correct .MBL).
Make sure that plugin "Additional Tagging & Reporting Tools" is installed.
Steps:
(1) In Preferences -> Tags (1) -> custom tags,
rename 'Catalog number' to 'Catalog number OLD'
(2) In Preferences -> Tags (1) -> [Define New Tags],
define a new custom Tag named 'Catalog number', and [Save].
(3) In Preferences -> Tags (1) -> custom tags, in a free slot,
set:
display name = Catalog number
save to music file as tag = Catalog number
(4) Make tags 'Catalog number OLD' and 'Catalog number' visible in the current view (Album & Tracks, or Tracks)
Then, perform a test with a few tracks:
(5) MusicBee Main menu -> Tools -> Additional Tagging & Reporting Tools -> Copy Tag...
copy tag Catalog number OLD to tag Catalog number,
and [proceed]. (You may have to close the window when done, if it doesn't close automatically.)
(6) With the selected tracks, right-click -> Send to -> File rescan
to refresh the display => now, you must see the same values in Catalog number OLD and Catalog number.
(7) If it's OK, you can do the same for all the tracks.
(

Then, you can wipe Catalog number OLD.