Should I say something to an undergraduate research assistant who isn't really working full time?
Should I have a conversation with him about his working hours? 


Yes! He gets paid to do a job. He doesn't do the job. You need to talk to him, even though it's an uncomfortable situation. Also, you say in a comment:


  Because the general culture in academia tends to be more like, "Work as many or as few hours as you want as long as you get your work done."


This is true, but you say that he does not get his job done. Frankly, if he only works like 25 hours, even if he would be supremely productive I would still talk to him about his work ethics if he puts in so much less hours than his peers... and if he is not it's all the more reason to make sure that he at least tries as hard as the others.

If you don't, the problem is going to be that sooner rather than later many of the 45-hours students are going to wonder why the heck they are actually not enjoying the summer. I have seen in my current group that various bad habits have a tendency to spread like wildfire if the students have the impression that not doing your job isn't in any way frowned upon anyway.


  If so, how to do it without sounding like a jerk?


In private, without getting emotional or accusatory. Tell him that you have the impression that he works considerably below the amount that was agreed upon, and that you have to ask him to change this. Tell him that you have the impression that his project is not progressing fast enough, and what will happen if he can't get it done in time (you have some course of action in this case, right?). Be prepared that he may counter with some sort of attack against you. For instance, this is a classic in such situations: "Well, since you never have time for me, I don't know what to do half of the time anyway - so rather than just sit around I leave". Make sure that you have a good answer in this case.