My application also is close to 2 years. I am with any effective measure. The problem is that most people are afraid of retaliation if IRCC knew who are protesting their performance. Many tried to organize something, but nothing came out of it, even to simply tweet.
I'm not sure if IRCC would systematically retaliate as an organization but there is usually that 5% or so folks in any organization that take things very personally. If you put your name in an official protest such as an email to the Immigration minister, I don't think they'll retaliate. If it's a tweet you should be able to tweet your situation anonymously (no name, no exact dates etc). It takes a lot of effort to locate your application, effort that IRCC definitely won't put in.
The problem is more structural. They have virtual guarantee no one will ever be fired. There is no performance measurement, whatever they have will probably be worth 2% of their pay, so no incentive to put in extra effort. Bureaucracies also have a tendency to join hands to isolate best performers among them and eventually get rid of them. At least client-facing bureaucrats such as Service Canada have to meet clients regularly so at the very least they have to have some empathy. IRCC is completely insulated. Unions also constantly use delays like this only to ask for more employees and more pay. It's a cycle and beyond a point things roll to a stop. I think IRCC is at that point.
But that's not a reason to hold back since two years is not acceptable. If I were you, I'd be writing a letter to local, federal legislators, immigration minister, your province's economic development /innovation minister and anyone who may be even remotely related to immigration. I'd mention, all the details with dates and also the total number of days passed, but in an easily-readable format and also stating "I will follow up with your office every 30 days until the IRCC starts processing my case again". If you want you can include your local IRCC office, you can do that too. Always add a list of cc.
You can also do other things like filing an Access to Information (not Privacy Act) asking for:
1. What is the backend process after an application is received?
2. What is done at AOR and why it takes 120+ days to perform it.
3. At what point is the application transferred to the local office and how its processed after that?
4. How are applications sorted?
5. When additional information is required to process the application either from the applicant or from another government agency, how are those tracked. If the information is received, how is the application put back into the queue?
6. What are the hiring and training procedure for case processing officers?
7. How do supervisors identify and intervene in inefficiency issues?
You can also as for the number of all applications in process at different stages.
You can keep going. You can add or remove/mix and match as needed or send these at different times.
As long as you're 100% sure you don't have any issue with the 1095 days (which some applicants have missed and didn't identify for a long time) or other technical errors, I'd do everything possible. Two years is a long time.