Say Host A wants to talk to Host B, yet they're in different networks and neither has a route to the other (no specific route or default route.) This generates an immediate error ("Destination Network Unreachable"), with zero network traffic.
If you're doing Proxy ARP, then you do have a default route; the destination is an interface instead of an address. (or your netmask is 0.0.0.0, but I don't think anybody allows that) In this case, an ARP is sent to the all-one's broadcast address (255.255.255.255) and then awaits an answer from anyone on the wire. Presumably, a router on the wire will answer and forward traffic in the correct direction. If not, the request times out and error is generated.
Let me start by saying proxy ARP is at best a sloppy solution. They only time I found it useful as a feature is when I was dealing with devices on the network that could not utilize classless netmasks or couldn't set a default route.
Yes, it can "cover" many client configuration or bad design problems, but it doesn't fix those problems. It also doesn't "cover" all of them and it can make troubleshooting issues more difficult.
Getting back to your question, the most likely reason this isn't working is that your client's aren't ARPing. My guess is that you have given them what is often considered a "standard" network mask of /24. So the solution would be to switch the network masks on the clients to /16.
Why? A client uses it's IP address and network mask to determine if a destination is on the local network or not. If it is on the local network, the client checks it's ARP table for any entries for the destination and if one doesn't exist, will send out an ARP request to get this information. This is where the router with proxy ARP enabled can respond, but if there is no ARP request then the router cannot provide a proxy ARP response.
If the destination is not on the local network, then the client will check it's routing table to see where to forward the traffic. This is typically your default gateway.
Now, with the IP addresses you used, if you used a /24 network mask, when the client checked the destination against it's IP/mask, it would find the destination is not on the local network. Going to the routing table, it won't have a specific entry for the destination network (clients won't by default) and no default route/gateway. It will then fail with a "no route to host" type of message.
Best Answer
ARP is used to find an ethernet MAC address belonging to an IPv4 address on your local LAN.
If you are sending packets to something that is not on your local LAN (according to the information that your PC has) your PC will send it to the default gateway, who is assumed to know what to do with it.
So, if you send something to an non-LAN destination your PC needs the MAC address of the default gateway, which it will send an ARP request for if it doesn't have it cached yet.
It is not possible to see MAC addresses of machines not on your local LAN.