What I do in Calibre is to add 2 extra columns. One is simply a checkmark that denotes that I currently have it or want to send it to my readers. That way if you do a factory reset, just sort by the checkmark column, highlight those at the top and send the batch to the readers. When I finish reading a book, I delete them off my reader and remove the checkmark.
Second extra column is a date entry that I make when I finish a book. Although I haven't forgotten yet which books I've read through decades, I expect one day I won't remember

.