As is often the case, the software gave the correct answer. You asked if a point off the coast of Africa (within 131 meters of the intersection of the Equator and Prime Meridian) was inside Portland, Oregon, and it said no.
It is not enough to assert equivalent SRIDs -- you must actually provide coordinates in the SRID you are asserting. Your mistake was providing:
st_geomfromtext('POINT(-122.591 45.5362)', 3785)
when what you really had was:
st_geomfromtext('POINT(-122.591 45.5362)', 4326)
Obviously, this would produce an SRID conflict during comparison, but there's no reason you can't reproject the WGS84 data into Web Mercator, with ST_Transform:
st_transform(st_geomfromtext('POINT(-122.591 45.5362)', 4326), 3785)
I would warn that the coordinate precision you provided is inadequate for point-in-polygon operations at the resolution of your map. Three places of precision in decimal degrees is +/-111 meters, which could snap to several streets in the neighborhood, and in fact is located in a different polygon:
For meter-ish precision (which is a tenth of conventional accuracy), be sure to use at least five decimal places in decimal degrees coordinates.