Blueberry - back to your original point.
I think I would have a meeting with your supervisor. Don't go in as a tattletale, but ask to clarify if in your department it matters if you work any specific hours or get anything specific done. Ask them if there is any policy on falsifying time sheets, playing games on the company computer or doing non company tasks on company time. You can even offer to keep the time sheets and check for accuracy
And then follow up with an email summing up the conversation and sending it to Lazy and the boss three states away.
Perhaps do this when you are ready to leave.
As a business owner and manager it's very easy to get people there on time or measuring their output. If an employee has a difficult time getting to work on time, I leave a note on their chair to please come see me when they get in. I get once in a while things happen, i do this with people with chronic issues. People like your coworker Lazy. Then I ask if they'll be making up the time at lunch, staying late or if they want their paycheck deducted. After two times, they get their pay deducted, and with that comes written warnings.
Also, my people have stated goals for their job. It's very easy to see who does and doesn't work. The people who don't work don't last very long with us, usually they quit when they see we're serious about everyone taking responsibility for their job duties.