I know you can use smaller time increments (I do that too), but new players or ingenous ones or ones that simply don't pay attention to these details might never know about it. I feel like the game should address the problem, not the players. At least make it suggest to the player it might be inefficient, if it's not solvable.
About the second, yes I meant something like that. The game shouldn't stop, I don't even know why it was made to stop in the first place. And yes, there will be a slow down in time increments while NPR do stuff, but it is a lot less noticeable than completely stopping everything. It might even be humanly unnoticeable with the speed of C#.