Yeah, the marble is a 3D texture so your character is in a sense moving "through it".
I'm sure there are many techniques ti fix this, but here's one.
1) Place your model in such a way that the texture renders the way you want it to.
2) Select your model, and under the Rendering menu set, run Texturing>Create Texture Reference Object
Now you should notice in the Outliner that you have 2 models. One will have a "_reference" extension. Esentially what is happening is that the reference object is being textured by your shader, and is transfering it's UVs over to the other model. Now, even when you move your model, it will always look back at the reference object to get it's texture info.
I hope this makes sense. Test it out on a sphere in an empty scene and it should become clear what this tool does.