How to display posts by author in a separate page, other than author.php?

Retrieving set of posts by some criteria is typically realm of secondary loop.

You can use get_posts() template tag or WP_Query object which both support author parameters in arguments:

  • author (numerical ID)
  • author_name.