That is an interesting questions and I was looking at the possibilities for this. And I believe there is no better or easier way to rename an object other than what you have mentioned. There is no such option available to rename an object in either S3 CLI or s3api CLI. Further, in the AWS doc, it is suggested you have to copy an object in order to rename it.
I was also looking at possible options to somehow change some object metadata. You can see details about object metadata here. However, I don't see any metadata field in system metadata for the object or key name. Furthermore, the document explicitly mentions the following:
After you upload the object, you cannot modify object metadata. The only way to modify object metadata is to make a copy of the object and set the metadata.
So I believe copying the object is going to be your only option.
Sharing file with URL link in S3asked 7 months ago
progressive AW S3 folder download support as much the local file storage allowsasked a month ago
BUG: S3 upload response data is different per file size.asked 8 months ago
S3 file drop fire multiple LambdasAccepted Answerasked 4 years ago
CLI for renaming file in S3Accepted Answerasked 5 days ago
How to download S3 file through Multi-Region Access Point (MRAP) using the AWS CLI?asked 4 months ago
S3 mv and rename does not work for large filesAccepted Answerasked 5 years ago
move multiple files from source S3 bucket into target S3 with source File Namesasked 7 days ago
AWS s3 sync Fails with Extant File (debug log is attached)asked 2 years ago
S3 bulk renamingAccepted Answerasked 4 years ago