I've spotted an error in the Application Definition file: it looks like the
latitude and longitude attributes of the customeraddress entity have an incorrect type definition. This caused errors during crawling and prevented some items from being indexed. The error log looks like this:
Microsoft.Office.Server.ApplicationRegistry.Runtime.RuntimeException: "The field named 'latitude' is defined by the Entity as being of Type 'System.Decimal', but the back end system returned a value of Type 'System.Double'".
I've looked for all the appearances of latitude and longitude and changed the type to System.Double and it's fixed now.
I know it's tiny, thought it might help though.