One of the best approaches, provided you have too many files, is to use ls for the sort itself.
Sort by name and print one file per line:
find $CATALOG -size +$SIZE -exec ls -1 {} +
Sort by size and print one file per line:
find $CATALOG -size +$SIZE -exec ls -S1 {} +
Sort by modification time and print one file per line:
find $CATALOG -size +$SIZE -exec ls -t1 {} +
You can also play with the ls switches: Sort by modification time (small at first) with a long listing format with human-readable sizes:
find $CATALOG -size +$SIZE -exec ls -hlrt {} +
Oh, you may want to only find files (and ignore directories):
find $CATALOG -size +$SIZE -type f -exec ls -hlrt {} +
Finally, some notes: avoid capitalized variable names in bash (this is considered bad practice) and avoid reverse ticks, use $(...) instead. For instance.
results=$(find "$catalog" -size +$size -type f -exec ls -1rt {} +)
Also, you probably don't want to put all the results in a row, as in the previous row. You probably want to put the results in an array. In this case, use mapfile as follows:
mapfile -t results < <(find "$catalog" -size +$size -type f -exec ls -1rt {} +)