I posted another comment yesterday, but it is not here now!
Anyway, it seems that a proxy is probably the way to go, despite your reservations.
A proxy can run on your machine, and therefore needn't be external.
Changing /etc/hosts to fool your browser into connecting to site2 instead of site1 just affects name resolution and is easy. Getting your machine to fetch page2 instead of page1 is much harder.
You could probably do it this way if you do not want to configure the clients to use a proxy:
- Add website.com to /etc/hosts pointing at 127.0.0.1
- Set up a reverse proxy on your machine and configure it to point to the real website.com.
- Configure the proxy to fetch page2 when page1 is requested.