HN may dislike it because it's an old protocol and it's more reliable than the newest crap today's developers are promoting, but I like PrimitiveFTP for this task. The .apk file is available at f-droid.org. MacOS should have tnftp(1) which is a preferred program of mine. Type ftp -h on the Mac to check.
The entire process can be scripted according to preference.
There are many way to do it. The following should work
Put phone and laptop on same network
For example,
192.168.1.1 is gateway
192.168.1.8 is phone
192.168.1.9 is laptop
Start PrimitiveFTP on the phone
On the laptop use tnftp to retrieve the photos
# get list of the photos, where PrimitiveFTP has been set to use port 2121
echo ls DCIM/Camera|ftp -P2121 ftp://192.168.1.8 > photos.txt
# get the 1st 100 photos
(echo cd DCIM/Camera;sed 's/.* //;s/^/get /;100q' photos.txt )|ftp -P2121 ftp://192.168.1.8
# get all photos created/modified in 2023
(echo cd DCIM/Camera;sed 's/.* //;/2023/s/^/get /' photos.txt )|ftp -P2121 ftp://192.168.1.8
The file attributes should be preserved.