The issue was simple. The code ordered by the timestamp, but the timestamp only had seconds of resolution.
When generating the timestamps, switching from the custom format string to isoformat:
def get_utc_timestamp_now() -> str:
# timestamp in a format where alphabetical order is also chronological order
return datetime.datetime.now(datetime.timezone.utc).isoformat()