You can do some simple tests with nc or Ncat. For example here is
$ printf 'ABCD / HTTP/1.0\r\n\r\n' | ncat -v example.com 80
The header field manipulation tests are harder because they rely on having a cooperating server that can check the request and see if it has been modified from what the client sends. If you could find a server that tells you what headers it received, you could use that. http://wtfismyip.com/headers almost works, except that it canonicalizes case in the header names. It could work for detecting some kinds of manipulation.
$ printf 'GET /headers HTTP/1.0\r\nACCept-LANGuage: en-US\r\n\r\n' | ncat wtfismyip.com 80
HTTP/1.0 200 OK
Date: Tue, 03 Mar 2020 09:09:38 GMT
That’s a good question. I don’t know. Maybe those tests are intended for testing a host-based firewall, rather than a middlebox.