Here are some suggestions:
1) First of all, get access to your home gateway's (FritzBox) admin page. Usually is a username / password connection via browser to 192.168.1.1. Review settings of WAN, LAN, Wifi and read about it.
2) Install linux and commandline tools : tcpdump, netstat, nc, telnet
3) Have another machine windows / linux with user interface, install there Wireshark
4) Try to develop some simple python socket level programs (python socket libraries fit nicely on C socket API's)
5) Record traffic between programs on different computers with tcpdump, and examine packages with Wireshark
6) Try adding proxy server (dedicated machine) to your home LAN network.
7) Install programs like Apache web server, CuteFTP, SMPT Relay, MiniDLNA etc ...
You can use my cheetsheat for linux to experiment with network related stuff
8) Try to create your own SSL certificates, to secure connections between computers in your network.
Answers to your questions:
Network setup: proxy is placed on network like any other machine. But all machine's refer to it (use it as "gateway").
Settings: All machines need to be informed of a proxy (port, address) via configuration parameter.
Programmability: Nothing. it will work out of the box.
Limitations: Would such a setup mean a serious impact on my network speed? No.
Best Answer
FreeProxy. Here is an article on how to use it with WHS.