Instead of using triangle fans, you're better off using indexed triangles. Not every Quake3 map will render properly if you use triangle fans. I made the same mistake for ages and that's how I fixed my bogus vertex data problem. My renderer is Direct3D based so it might not help much. If you want it anyway, I can upload it and hopefully it will help.