Is there any relation between the block version field and the one of the transaction?


I would send your solved block to a core node of your own and then check the debug.log file to see why it wasn’t accepted.

But, no, in general there is no necessary relationship between the version of the block and the version of transactions. Version numbers just give a signal to other nodes if there is any special way to handle new blocks/transactions.

As per BIP34, version 2 blocks now have the block height put into the scriptSig of the coinbase input so that no one can make a transaction with a duplicate transaction id (hash).