Bit puzzled. If the limit is 64,000 characters and Longhorn has 90,088 I struggle to believe the query is failing at that point - it would have failed much earlier unless he has just copied a query into the union which is in excess of 26000 characters - which seems out of kilter with it being the 43rd item.
You can get the 'query is to complex' error if you are trying to process a null value, wrong type of calculation (e.g. trying to multiply a numeric field and a text field) or number out of range (e.g. converting a double value to a single value when the value is to large) which implies an issue with the data.
Since this failed on the 43rd item, I would look at the data this item is generated from. Since you have a union query it is possible this part of the query will run OK on its own but comes into conflict with the rest of the union query (e.g. columns in wrong order or wrong type)
Pure speculation on my part, but from the size of the query I would also suspect that the database is not normalised - perhaps something like one table for each 'type' of part rather than one table for parts