@Xina Unfortunately, there is no raytracing in this plugin (for the sake of performance) but that also means things like walls, regionblocks, etc can only stop light in their specified area, not outside. The only solution I know of would be to use pressure plate type events (below player, on player touch) that, when stepped on, deactivate region block for a particular region and activate it for another. So if the player is in, say, the kitchen, they can't shine their light directly into the bedroom. But once they enter the bedroom, regionblock on the kitchen area is activated and regionblock on the bedroom area is deactivated, allowing the light to shine in that room normally. If that makes sense.
@Hayden RM has a weird thing (I think it's either pixi or nwjs that does it) where, when things get too heavy, it throttles the framerate to 30 "to help performance" but it's really annoying. You can even trigger it by spam-right-clicking to open/close the game menu really fast. Does that room also lag when this plugin is disabled? If so, how's your PC? If it's older, that might be the problem. It's also worth noting that when the debug console is open, it can sometimes cause a big performance hit too. Especially if something is writing to it frequently. Any lag related to the debug console is irrelevant once deployed though, thankfully.
@Bryanh Yeah, there's a plugin command you can stick in your common event. In MZ, it's Time Speed (set it to 0) and in MV, it's "Daynight speed 0"