It is fully possible to send data with a fake sender IP. You’ll have a hard time getting replies though, since the replies will be sent to the fake IP and never reach you. Additionally, if you send data with a “from” IP that a router doesn’t expect to arrive from you, the router will often simply drop it, and sometimes inform the ISP that you’re up to something that violates your TOS.
EDIT: In response to edited post.
Any protocol (such as HTTP) that is built on top of a connection-oriented protocol (TCP) will require a valid IP. The cases where fake IPs have been prevalent mostly involve Denial Of Service attacks, using UDP, ICMP or the initial SYN packet in a TCP handshake.