In our production database, we ran the following pseudo-code SQL batch query running every hour:
INSERT INTO TemporaryTable
(SELECT FROM HighlyContentiou
Probably you could use Create View command (see Create View Syntax). For example,
Create View temp as SELECT FROM HighlyContentiousTableInInnoDb WHERE allKindsOfComplexConditions are true
After that you could use your insert statement with this view. Something like this
INSERT INTO TemporaryTable (SELECT * FROM temp)
This is only my proposal.