It's very simple, the reason the Marines were called to stay in Iraq was because the US military was unprepared for the occupation of Iraq after the initial invasion. The troop requirement at the begining of the war was substantial and the Army by itself would have had an even harder time shouldering this burden without the help of the Marine Corps. At the begining of the Iraq war there were only about half a million active duty soldiers and about 190,000 Marines. The troop requirements in Iraq and Afganistan at this time was over 150,000 by themselves, growing to about 240,000 by 2008...this isn't taking into account other areas where the US had troop requirments.
The Army grew to meet these requirements in the ensuing years of the war topping out at about 620,000 by 2010 and the Marines also grew their numbers to accomodate the wars, growing to about 220,000 by 2010.
This is why about half the troop burden in Iraq from 2004 to 2008 was from the reserves and National Guard. We don't continuously keep the same soldiers in theater until the job is done like we did in WWII. The Army had 12, then 15 month rotations for units going into these countries up until 2011. The Marines went from 6 to upwards of 8-9 and even 12 month rotations up until they pulled out completely from Iraq in 2010 where they picked up a more prominent role in Afghanistan from that point forward.
The Marines traditionally have a more active role in counter insurgency and small wars than any other service because they are expeditionary by nature. Yes, they are primarily to be employed as an amphibious force to establish beachheads for further combat operations. But, this is by no means their only purpose. They have shouldered significant burdens in every major operation the US military has been in since WWII to include Korea, Vietnam, Grenada, Panama, Desert Storm, Somalia, Haiti, Afghanistan, and finally Iraq, just to name the major ones.
The Marines have been using the Marine Expiditionary Unit concept for decades where an entire Marine Regiment is deployed for 6 months at a time ready to respond where ever the President needs them. There is a reason they are called the US's 911 force. They have the capability to conduct protracted combat operations...why not use it?