Solución:
Terminé creando mis propias herramientas para hacer esto.
Usé la biblioteca Clipper (http://www.angusj.com/delphi/clipper.php) junto con OGR para dividir mi configuración de datos. Algo a tener en cuenta es que realizar intersecciones ingenuamente con esta biblioteca lleva mucho tiempo, así que en su lugar utilicé un enfoque de árbol cuádruple … es decir, dividir en cuatro celdas de cuadrícula, dividir cada una de ellas en cuatro más, etc., hasta que obtenga la resolución deseada. Sin embargo, la biblioteca funciona muy bien, he adjuntado una captura de pantalla que muestra los resultados en el hemisferio oriental:
El resultado anterior tomó aproximadamente 4.5 horas en un procesador de 1.33GHz.
Aquí están las herramientas en caso de que alguien se encuentre con un problema similar en el futuro. Tenga en cuenta que son pruebas de conceptos pirateadas y probablemente no debería usarlas directamente (aunque podría servir como un buen punto de partida para algo):
https://github.com/preet/scratch/tree/master/gis/polytoolkit
https://github.com/preet/scratch/tree/master/gis/shapefiles/shptk
Definitivamente parece que tienes problemas de geometría. Es poco probable que pueda producir resultados limpios a partir de un archivo de entrada sucio, independientemente del software utilizado, a menos que primero aborde sus problemas de geometría. Una vez que haya resuelto sus problemas de geometría, puede intentar lo siguiente si aún tiene problemas:
1) Asegúrese de que su conjunto de datos de cuadrícula tenga la misma proyección que su conjunto de datos poligonal mundial. Si no es así, recréelo en la proyección adecuada.
2) Convierta todas las funciones en una sola pieza, mucho más fácil de procesar
3) Elimine todos los campos extraños manteniendo solo el campo de identificación que le permitirá unir sus atributos nuevamente después de que se haya realizado la intersección; nuevamente, es mucho más fácil de procesar
4) En lugar de cruzar todo el dataset de cuadrícula con el dataset de polígono mundial completo, intente recorrer sus polígonos de cuadrícula, seleccionar los polígonos que se cruzan en su dataset mundial y realizar un clip en función de su polígono de cuadrícula. Esto le permitirá aislar cualquier problema y, al final, podrá fusionar los resultados para lograr su objetivo original.
5) Intente usar polígonos de cuadrícula más grandes.