I know a lot of SharePoint consultants deliver solutions that are more or less “standard” SharePoint functionality. They are afraid to change SharePoint according to the end user’s needs, because it will results in tough maintenance in the long run.
The problem is: Sharepoin is a generic tool for generic problems. If I have a need that’s not standard Sharepoint functionality, then why should I use it? After all, you hire a tool to get a job done, right?
Here is my advise: stop working directly with custom lists, content query webparts, etc. Focus on the end users needs first.
Try a methodolgy called: Design Thinking