There is an undocumented advanced editor.keys.home_and_end_beginning_end_of_doc setting in the preferences.txt configuration file of the classic Arduino IDE that allows the behavior of the Home and End keys to be customized on macOS. I think the behavior you described is actually the standard Apple way of doing things, but obviously it's annoying to have your keyboard do one thing on macOS and another on Windows and Linux, and I believe this is why Arduino set that editor.keys.home_and_end_beginning_end_of_doc to false by default.
Unfortunately, that advanced setting only applies to the behavior of the Home and End keys by themselves, it does not apply when using the Shift modifier to cause them to select text rather than only moving the cursor. That bug is tracked here:
I don't have a macOS machine convenient to try it out, but I think there is a good chance this will be resolved once you switch to Arduino IDE 2.x. It is still very much in a beta development phase, but the Arduino developers are working hard on getting it to a usable state so hopefully it won't be too long to wait.