One 'cheap' approach that springs to mind would be to re-purpose the Middle name field. If you can live without the middle name field, this might be a good option for you.
You could use Word Replacement to replace all instances of Middle Name with Maternal surname and all instances of Last name with Paternal surname.
I haven't done this myself, and it might be that there are good arguments against doing it this way. I am interested in hearing any potential downsides from others who have tried / decided against this approach.
I think the answers/comments that Francesc and Luciano have given are very valid and based on pragmatism. They have been fine without it for 5 years. If there specific things that you can't do when they are in the same field, it would be good to know more about them so we can try and suggest way to address them. If the only motivation is to get the data structure right because it "is just plain bad coding and should be fixed", then there are other parts of the code that I would suggest fixing before this :)