Your solution is probably an overkill. You don't have to release and recreate any resource besides those placed in D3DPOOL_DEFAULT. Your meshes and textures will most probably be D3DPOOL_MANAGED and so you don't have to take care of them anyhow.
From your first post it's clear that your reset actually worked (in a way). That means you released all resources that had to be released, otherwise you wouldn't be able to reset the device at all, you would be getting errors.
From your explanation it's also quite clear that your only problem were transform matrices (SetTransform), which caused the geometry problems; and render states (SetRenderState) which caused non working alpha blending etc. And also lights (SetLight).
All these values must be set by you again because they are in the default state after device reset.
Setting these values after each device reset is very easy and fast. This hovewer isn't true for textures and models, creating them again can take a lot of time and IMHO it's not optimal to do it even if you really don't have to.