I'm wondering how to tell where the furthest left and "top" screen coordinates of an object is.

I had thought to use the transform.collider.min and doing worldtoscreenpoint, but as the camera rotates around the object (especially around the x axis) this doesn't always hold up.

I'm afraid there's no easy solution for this. You could go over all the points of your collider, calculate screencoords and calculate min/max values on them.

If you still havent found an easier solution for this, here is my complicated and not very accurate solution.

This is the function you need for getting an objects PIXEL SIZE (size drawn on screen)

//Gives pixel size of an object
public static float angularSize (float diam, float dist, Camera cam) {
float aSize = (diam / dist) * Mathf.Rad2Deg;
float pSize = ((aSize * Scr.height) / cam.fieldOfView);
return pSize;
}

Where diam is,
diam = transform.collider.bounds.extents.magnitude;
dist is,
dist = Vector3.Distance (transform.position, Camera.main.transform.position);
cam is the camera you are using.

This works for square or circular objects best.
Then you can work your way through objects screen position and the objects screen size to find your answer.