Finding the average of where the pixels overlap might be good in some situations, but would yield strange results in others. For instance:
Here the collision would register in empty space as the average of the two actual collision points. It would be very difficult I think to develop a system where Construct could accurately decide where to register the collision in a way that makes sense to the user, and even more difficult to make it so both areas that are overlapping register separate collisions.
As a workaround you set up image points around your object in certain key areas and test for "sprite1 collides with point (sprite2(imagepointx, imagepointy)) ." That might do the trick, depending on how many image points you set up.