You're going to incur a fee somewhere. If you go p2p, you'll buy it for higher than market rate, if you buy usdt you'll incur the transaction fee to transfer it to an exchange where you can do a market buy with it.
I guess the only way to really get sats without a fee is either to be tipped on stacker news or to sell a good or service in exchange for Bitcoin