What data is duplicated when MySQL/MariaDB BLOB columns are copied?
Separate copy.

Copying just a disk pointer would necessitate "reference counting", locks in places where there are none now, etc.

You could implement such by keeping the BLOBs in a separate table and somehow link to them.  You could use MD5 (or other digest) for de-dupping.  However, I suspect the benefit would be outweighed by the complexity and potential for bugs.

"for a long time" -- If there are many rows being copied in the same transaction, note that there is extra effort to prepare for ROLLBACK in the case of a crash.