How to tell my boss that my lazy coworker is getting credit for my work and vice versa?
This is going to be a long-ish post, but I want to give the full scope of the situation, and I'll add a tl;dr summary at the end for those who just wanna know the main points.
For a little over a year, I've been working freight at a small chain department store and, frankly, I was crushing it for the first 9-ish months (within the first week of working there my boss told me I was next in line for promotion, and that didn't change for 9 months). Then, out of nowhere, my hours got cut in half and a new person was brought in to work freight alongside me. I knew they weren't going to fire me, but the sudden cut to my hours took a toll, and I started working much slower because of it.
The new hire quit without notice about a month in because they weren't getting enough hours to provide for their kid, and then a week or two after that they hired another new guy—a young kid I'll call B, who had never had a job before, and the source of my troubles. Without any malice or anything, I could tell from my first shift with B that he was lazy, very much intentionally. He would literally say things like "Alright my break is coming up (in 10-15 minutes), so I'm just gonna look busy and wander around until then," and "I love working with [our boss]. I can go up and just let her ramble and it's like a free 15," he would routinely cut corners, like putting things in the wrong spot if he can't find the right one, or hiding items behind other things on the shelf rather than grabbing a ladder to put it on the top shelf (like we're supposed to), and he even brags about taking additional breaks whenever our manager is out on lunch (which I already figured, since he would just disappear for several minutes at a time). He's also incredibly slow at his job, not out of incompetence, but out of willful laziness. He'll literally lean up on a shelf and chat with me while I continue to work, and you can only say some variation of "How about we work and talk" so many times before you run out of polite ways to say it. Small bonus, he even took credit for my work when I used to help him, like literally saying things like "I (B) did three pallets, and he (me) did two" while knowing full well that I helped him with his pallets while also doing my own because he was new and I wanted to be nice (that stopped as soon as I heard him say that).
I understand that we all have off days, we all need an extra break here and there, etc., but he consistently takes every opportunity he can to avoid doing the one thing he's paid to do, and he's not shy about it (unless our boss is watching).
As politely and professionally as I can, I've spoken to him about some of the stuff that actively gets in the way of other people's work, like putting things behind other items or just basically leaving all the work to one person (namely, me), but he routinely just brushes it off and encourages me to be lazier like him.
I've wanted to talk to my boss about this for a while, but shortly after he was hired I got my ducks in a row and got back to my regular pace and, due to the timing, my boss and coworkers all assumed he was the one who was carrying the freight shifts, and I felt like any complaints I made in that environment would be seen as me being petty or just trying to frame him since he's new and, like I said, I was performing poorly for a bit prior to him being hired (due to my hours being cut in half).
However, due to our continued low metrics (because he doesn't pull his weight and it shows), our boss decided to shake up the freight shifts, and her first move was taking him off and putting someone else (who isn't great but at least actually does work) in his place, and immediately our freight team lead was singing praises, to the point that he thinks it's the *other* new person who's carrying even as she admits I'm the one doing the lion's share of the work.
I want to take this opportunity to clarify things to my boss, or at least let her know that I am, in fact, the one who has continued to carry our freight team, and, if possible, tip her off on some of B's bad behavior (somewhat vindictively, admittedly). One of the main issues I have is that his laziness only comes up on freight, where he can get away with it. He's lazy on register, too, but that's a lot less obvious than freight where there's measurable progress and quotas, and so far most of his laziness is invisible to our bosses because all they see is the progress (or lack thereof) in the backroom, or they see him doing a decent enough job because he actively hides his bad behavior when they're around.
Also, I wouldn't care this much if it were just a lazy coworker—I've had plenty. My main gripe is that he is getting credited with the effort I'm putting in, and I'm being made out to be some slacker even as I do most of the work on our team, and (more importantly) he's getting more hours over time while I'm not, and I'm certain it's because my boss thinks he's doing more than me.
I'm considering sending an email to my boss's business email so there's a paper trail, but I honestly don't know how to say "I'm actually the reason freight gets done and quotas get hit, not the other guy" without sounding a bit... I dunno, ridiculous.
tl;dr new coworker who brags about taking extra breaks, cuts corners, and doesn't even try to pull his weight is getting credited for my work, and he's getting more hours because of it when they should be going to me, and I'm not sure how to explain that to my boss without sounding ridiculous.
Any and all advice is much appreciated. I honestly hope they fire him because his behavior is so egregious, but I know that's just vindictive fantasy, but I really can't stand this farce continuing.
Edit: I forgot to mention, they passed me up for the promotion my boss had continually told me I was going to get and gave it to B (the lazy coworker) because they thought he was the one responsible for my work. I'm already looking for new jobs, but in this market it's been incredibly tough, so I want to do what I can to make the most of this one until I can hopefully land something better. Frankly, part of me just wants to quit and chew my boss out for that, but I need the job until I can get a new one.
Edit: clarity