tx1 - I want to first create tx with 0 fee
On the next I am going to add tx1 as input and add necessary fees into it
the issue is tx1 gets rejected by full node why is that cant I broadcast a 0 fee tx ?
In order for a node to relay a transaction, the transaction must satisfy the node's
minRelayTxFee. This fee rate cut off is by default set to 1000 satoshi per kvB (= 1 satoshi per vbyte).
Your first transaction could get included in a block if the miners were aware of it, but likely it doesn't reach them.
You should try to either broadcast the first transaction with 1 sat/vbyte or to directly submit them to miners via their respective APIs.