The rewriting the entire file or deleting the entire file is still the approach.
Manipulating a single record is not trivial because typically the records are stored in side of a larger file and that larger file is also typically compressed. In the case of data stored as Avro, the data is block compressed so you'd be manipulating a specific block in a file.
This restriction is also built on top of HDFS which doesn't support modification but instead append only.[1]
If you need to modify individual records you might look at something like HBase.