Fancy hacking
I think the simpler solution is just to hack you bst file. So, for example look in the apalike2.bst file for
FUNCTION {format.authors}
{ author empty$
{ "" }
{ author format.names }
if$
}
and add smallcaps before format.names so that it looks like
{ author smallcaps format.names }
Here I added the smallcaps function near FUNCTION {emphasize}, and it is defined as
FUNCTION {smallcaps}
{ duplicate$ empty$
{ pop$ "" }
{ "{\sc " swap$ * "}" * }
if$
}
The result is shown below:

It works with apa.bst too, as shown below:

Using makebst
Otherwise, you can use makebst, and generate your own format, e.g.
$ latex makebst
will ask you a series of questions about the format of your bibliography, including typeface about authors:
TYPEFACE FOR AUTHORS IN LIST OF REFERENCES:
(*) Normal font for author names
(s) Small caps authors (\sc)
(i) Italic authors (\it or \em)
(b) Bold authors (\bf)
(u) User defined author font (\bibnamefont)
Select:
\ans=s
You have selected: Small caps authors
When the above steps are completed, you can just run latex on the filename you gave, and you'll have your bst file. Below is the result. (I accepted all default choices, so you may have to tweak it to fit the APA style.)
