Hi Junting,
You should be able to make a prism layer in gmsh by creating a triangular surface mesh on your object, and then using transfinite line/volume to stretch this outwards into a volume of prisms coming off of the surface. This is a bit difficult to explain here, but you can see an example prism/tet cylinder mesh in the supplementary material of the below paper that uses this approach:
Also, regarding your error importing the mesh I think it is mostly likely one of two things:
1) You are missing boundary condition information of the surface faces of your domain
2) You mesh is broken and some internal faces are not paired to each other
Hopefully that helps,