Hm.

Well, I guess you could do it by:

(1) Checking if player is pulling on a push block;
(2) If so, make Link invisible with an offset item, moving him to the other side of the block. FFC that looks like Link pulling is left where he was. Player is then pushing. Make sure solid push blocks rule is on!
(3) Put Link back on the other side of the block.

That would generally work, but it has limitations. Like, if there is a solid block on one side of the block being pushed, can Link push it?

-C