Update: I figured it out. Even though "Percent Read" column pulled directly from the "%" column (I use one for column view, the other for book details), somehow it was mucking up the sorting.
ANOTHER EDIT: It was set to sort by integer instead of text, and since the original column is
{0}% the percent sign tripped it up.