As you can currently see, my model class is dependent on Vertex::Basic32 vertex. How would I go about making this class vertex independent without actually using inheritance and virtual functions?
The only occurrences of Vertex::Basic32 I've seen are in Model::LoadFromFile(…). The responsibility of the Model class (as it looks for me) is to group related graphics resources for the runtime. As such it should not be responsible for how the components come together (may be loaded from mass storage or generated dynamically). It should especially not be burdened to know about assimp. Instead it should have getters and setters for its components and perhaps some validation routines.
The task of loading model components should be external to Model, e.g. in a ModelLoader class. This one (or one of its derived classes) then knows how Model components are represented within assimp, and is able to do the conversion into the internal data format.
It would be okay for ModelLoader to have virtual functions, because loading is a relative slow process anyway so the one virtual call would not be noticed. Furthermore, loading happens very seldom.
BTW: Please avoid linking to temporary external file sources as long as the files are relatively small, but embed them with the source tags into the post. On one hand that lowers the barrier for us to look at your problem, and on the other hand it will not drive the thread needless because of the disappearance of the external files one day.