Check the coolant temp sensor and ensure it's functioning as well as the intake air temp sensor, both will screw up fueling if they're not functioning properly.
Good that you tested the same tune on 2 different bikes, eliminates it at the cause, so moving to hardware.
TPS - loosen the bolt a touch while it's idling and adjust it back and forth watching voltage in TuneECU, if the bike is responding to the .01 - .03 volt movements as you gently and slowly wiggle the sensor, the sensor is fine. Set back to correct voltage.
What is strange is the idle not targeting the RPM you're commanding in TuneECU, it should go after that target value in the table. Possibly a clue?
I assume from the context clues, Pauls R3 has an AT fitted and the O2 box unchecked in TuneECU? If that's not the case, and he is using the stock sensor and has the O2 box checked, just uncheck the box, reset adaptations, and see if it fixes it.
A blocked injector would cause lean fuelilng, but, it may have become sticky or not fully closing, leading to a rich condition, this should sound like almost a lope in the idle and the one cylinder that's got a grumpy injector will throw off the idle cadence. Easiest check is to swap in a known good set to verify it's not that. Try running some cleaner or elevated ethanol content fuel through, may help.
Then my mind says, barometric sensor may be going out, its located back under the left side cover if memory serves right. I can't offer how to check it easily, but, it can also cause fueling problems if the reading is off. This is a reference value not shown in TuneECU I don't think, it's used by the ECU for elevation compensation.
If it's none of those issues, and it's not the crank position sensor, I'll be looking at the ignition system, or some part of it not cooperating as it should be.