What happens to my outgoing txs in a block reorganization? Let's assume I create and send a series of txs:

|------block A--------|------block B----------|----block C-----|----block D-----|
|Tx1......Tx2.........|...Tx3.................|................|......Tx4.......|


but then a fork happens and a block reorganization takes place:

|------block A--------|------block B----------|----block E-----|----block F-----|--block G--|
|Tx1......Tx2.........|...Tx3.................|......???.......|......???.......|.....???...|


Whatever happens to Tx4? Will it be included in one of blocks E, F, G or another block? Is it gone? Conflicted/invalidated? Do I need to resend it? If yes, can I spend the same inputs I did when creating Tx4?
Will it be included in one of blocks E, F, G or another block?


It's likely already included in one of those blocks. If not, it can be included in a block after that. 


  Do I need to resend it?


Probably not. If block D or Tx4 was widely seen by the network, it should get into a block soon. (It might already be in blocks E, F, or G.)


  If yes, can I spend the same inputs I did when creating Tx4?


Yes. When doing a reorg, the Bitcoin client first rolls the chainstate back to the first common ancestor.

The standard Bitcoin client actually includes a database for the sole purpose of rolling the blockchain back. (It's called an undofile.)