Hello,I will be glad to try and assist you with this,Welcome to Just Answer.
From what you have described here this does sound like the heater core is restricted as you can increase the engine
r.p.m. and then the vehicle will heat,this increases the water flow pumped by the water pump
and then your heater operates with this.
One thing you can try before replacing this heater core is flushing it,I have had some success doing this on allot of vehicles.Remove both heater hoses going to the heater core at the firewall under the hood.Then you can take a garden hose and flush through the heater core through both heater core pipes sticking out of the heater core where these hoses were removed until you have a good flow of water flushing it back and forth on both pipes.
Then reconnect the hoses and check the operation of the heater.If you still have this same problem then replacement is needed.
The dash doesn't have to come out for this replacement.Below are the instructions for replacement.I apologize as I don't have any pictures or diagrams of this.
REMOVE OR DISCONNECT
1. Junction block cover nut and cover.
2. Heater core inlet and outlet coolant hoses (partially drain cooling system).
3. Glove box and sound insulators.
4. Two screws attaching Body Control Module (BCM) bracket to A/C module case, programmer air mix valve link and shield, and programmer
wiring and vacuum harness connectors.(this should be behind your glove box on the heater box)
5. Module assembly heater core cover (with programmer attached).
6. Two heater core retaining screws.
7. Heater core.
The core is around $100 and close to 3 hours labor to have it replaced.
Let me know if you need anything else,click accept if you feel satisfied with your answer as this is how I get credited for my time,Thanks Pete!