Also plenty of people with 4gb polaris cards are hitting dag limits. Im one of them. My 6 card rigs have been online for years until now. Issue started around dag 285 on ETC. ETH gave the same issues but later because the dag is slightly behind. I run windows 10 with Claymore connected to Nicehash dagger/hash pools. Virtual mem is set to 98gb. When the rigs were being fed ETH jobs they would mine no issue but as soon as the pool would switch to ETC it could not load the dag and would sit restarting the miner until Nicehash would switch back to ETH or whatever dagger/hash coin they are pushing. Did a couple Windows 10 reinstalls just to be sure I wasn't having any corruption or OS issues.
the case you describe here: dag is being generated - it gets written into the GPU memory, but then you may need do free up
all the memory to allocate another(different) DAG. there're many factors that can fail - intensive mem writes on overclocked and already heated GPU, memory free up and allocation can also fail easily, driver can be an issue and not only the miner app (like you may have no idea what kind of "optimizations" may be in the implementation of OpenCL methods on AMD side and how graceful it's with allocations these days or whatever)... so...
it all however doesn't mean that you can mine eth on 2gb gpus - it's total nonsense. very simple: you need DAG(over 2 GB size) for algo to work, if somehow you manage to slice it and put only "relevant"(

) parts of the dag to the current calculations - you'll kill all possibilities of producing any meaningful results by constantly bottlenecking around reloading the dag parts into memory.
in any case you are highly welcome to substantiate your incredible claims.