I've searched the forum for a solution to my problem but I can't find one that exactly describes my situation.

Mochi (4 months old) doesn't have any food aggression at home. I can take things she picks up out of her mouth (when needed), move her food bowl around, take food out her bowl to hand feed her, take away bones from her, etc...but when we are outside and she picks up trash (such as chicken bones or plastic or chips) and I try to take it out her mouth, she flips out. She growls at first and then she starts to bite and snarl and continues to eat it. The weird thing is I can touch her chin and body while she's eating whatever she picks up but as soon as I try to take it out of her mouth (quickly or gently) she will growl or snap. Same thing as when we are outside playing. Whenever it's time to come in, I'll hold her leash and then try to take it off but she sometimes snarls and snaps at us...not all the time but occasionally. I noticed that she does that when she's excited or feeling too restrained by the leash. Maybe she has too much pent up energy and when we restrain her she gets stressed? Idk :( I walk her at least twice a day for 20-30 minutes, let her run around in our backyard at least three times a day for at least 30 minutes, and if she's not outside she's either sleeping or we are training or playing with her toys.

I can't figure out whether it really is resource guarding or what because it's ONLY when she's outside and it's not like what everyone else describes (not being able to touch or go near their dog as I can with mine). Anyone experience anything similar to it?

Have you taught her a leave it (don't touch that) and a drop it or give (release what's in your mouth) command?

If you have it's just a matter of proofing the behavior in different settings so it's less conditional. Dogs are notoriously specific with commands and they need to be proofed in as many different scenarios and places as possible before it's truly learned. This is the difference between saying "sit" and having them sit every time no matter what and saying "sit" and having them only do on mornings in kitchen when you're wearing slippers and have a piece of dried beef lung in your left hand and your open right hand is palm up at waist height.

If you can teach them to give/drop it willingly and on their terms (with a really high value treat of course) it'll be easier in the long run than trying to take things from them ... as far as they're concerned you're stealing their new prized treasure. Bartering with treats is a better option.

High value treats are the best option for bartering important instructions, whatever you have has to be of more value to them than what you're trying to take from them or what you're trying to get them to not do. Once the command is learned you'll be able to give it and receive a positive response without having to reward every time. You'll still want to reward periodically so the don't decide randomly that it's not worth listening to you any more lol.

Well, I found it important to teach a solid "leave it" when Ozzy was young. I had to be on the lookout and make sure that he didn't get into garbage or things outside BEFORE he got them. I would notice it first, tell him leave it and give him a treat for leaving it. It also really helped for him to carry something during our walks, so I used to keep a small toy in my pocket to let him carry.

If Ozzy started spazzing out on the leash, I became a tree. I would just stand there and keep him on a short leash and ignore him. Once he was done and calm for a while, I praise and continue. I also have him sit before I take off his leash. So at first, I would have him sit and give him a treat for the sit, and take his leash off. Now he knows when we come inside that he can just sit and I'll take off his harness and leash.

That might not help at all lol. I'm not getting a clear picture about what you mean when you're coming inside and she's snapping when you take off the leash. Is this like when you're coming in from a walk? Or when she comes in from playing in the backyard? Does she not want to come inside, or you think she's just amped up from having a blast outside?

@spacedogs she is in the process of learning leave it/drop it :) I've started trying to train her outside because she performs commands indoors very well but noticed that when she goes outside it's only a 5% chance that she will listen lol she gets so distracted and hyped when she's outside. Today, she actually did drop it when I wanted to trade this piece of plastic she had in her mouth for a treat. But then she picked up something (idk what but she was munching on it) and I tried it again and she just kept munching away and didn't want to trade :( whatever it was, it must have been good as heck to resist beef treats. I decided to up the value of the treat so next time she won't resist. I guess I wanted to just make sure I am doing things right since I am a newbie to owning a shiba.

@lilikoi we have this long retractable leash in our backyard (since we are in the process of making a fence for her to run around leash free) and sometimes we have to switch it with a regular leash to take her someplace else to potty after she plays since she never wants to potty there. So, when we are in the process of switching the leashes, she wants to move around but can't so she ends up spazzing and biting and acting aggressive. This happened at petsmart puppy class as well. We had to switch the leash she was using with this long training leash. She wanted to play with the other pups but couldn't get to them because we were switching out the leashes and next thing you know she turns and snaps and growls at us. We weren't even pulling her! She was pulling herself trying to get to them. The other time she does become like that is when we kind of pull the leash to get her to come inside (because she literally wants to stay outside for hours) she resists at the door and wants to keep playing and when we give her a little push she like spazzes.

The weird thing is that sometimes she acts that way and sometimes she does. It's like 80% of the time she doesn't act that way, but the 20% she does. It happens but not every single time. It's just confusing because I can't figure out why it's sometimes and not all the time. I'm not sure if it matters but she hasn't been spayed yet and she's still teething as her puppy teeth haven't fallen out yet.

She's just testing boundaries and trying to get what she wants, coupled with not knowing entirely what's expected of her yet. Just keep being persistent with the training, keep proofing the behaviors you want in different environments and scenarios, and if necessary find a higher value treat that she responds to but only use it for the most important commands (for me I consider those to be leave it, drop it, come, and stay but realize this will vary from dog to dog).