How can I set 4 x 6 as the default printer setting?
If you print from the command line with lp you can do something like:

lp -o media=Custom.4x6in filename

That will print at 6x4 on the default printer the file called filename.

On my HP inkjet that made it pick the photo tray over the main tray.

So, put the above in a script and have automator run it pointing at the directory with the files in.