I daresay it would be mostly because Britain was always a far frontier territory; conquered as an example that Rome could cross oceans for greatness. It was not as valuable a province as most of the other provinces. It's distance and occassional inaccessiblity i.e. fog, rough seas, caused England to not become as Romanised as other provinces. The ordinary people would probably never have bothered to become fully fluent in latin, but they would have held on to their language and beliefs, not to mention the invasion of the Normans and before this the continuing invasions of the Picts and Scots.
Dacia was subdued after a long and difficult war by Trajan. It was added to the Roman Empire at Rome's peak of territory and power. Perhaps the dacians, having witnessed this might, wished to be like the Romans. It would not be the first time a tribe or race wanted this. Thus, they adopted the language and never let it go, wanting to retain that thought that they were still part of the mighty Roman Empire that had gained their respect and subservience. Despite the many occupations of subsequent tribes, including Huns, Bulgars, Magyars, Avars etc. the idea of remaining "Roman" was a talisman that they probably clung to. It was the same with other nations. they just couldn't accept that Rome, so immortal and great, could fall, as they were so awestruck and, well, Romanised themselves. It's like i've said before, a nation that is mentally as well as physically subdued will remain thus far longer than a mere physical conquest. Trajan's victory, once complete, was complete. Thus they maintained it's institutions and language, as you said, can be seen today. The territory was mainly abandoned because of the other tribes migrating into the area and its obvious potential in future to be a kind of meeting ground for migrating tribes. The abandonment of the territory was perhaps a rather foolish decision.