I would argue that the key here is that you've misunderstood the sentence - the author is not literally saying that Powers has been wearing "the same unironed shirt and dirty white sneakers" for the entirety of the preceding week. He is saying, rather, that for some period of time that started and ended about a week ago, Powers had been wearing that very outfit.
Indeed, if the sentence was intended to literally mean that Powers had been wearing that outfit for the entire week, starting at the latest a week ago, then
since a week ago or
for the last week would work fine in place of
a week ago, although I personally would elect to use
for the past week (and would prefer
for the last week over
since a week ago; it sounds a mite less unnatural).
Rather, all the sentence is is an observation by the narrator that Powers, a week ago, had been wearing the exact same outfit. It is not immediately clear whether Powers has been wearing the same outfit for the entire week or whether Powers has changed outfits during that week and simply worn the same outfit at this point in time, with or without having washed it. While the first one - that Powers has been wearing the same outfit for the entire week - is a perfectly reasonable reading to draw, it's not possible to completely rule out the others (hence the disagreement evident within these answers).
Your reading - that Powers has been wearing that outfit for the entire week - would certainly exaggerate the extent of Powers' unkempt-ness, and is a perfectly natural implication that follows from the statement, but what Ballard seems to be doing here is emphasizing that the outfit is all the more unkempt for the sole reason that Powers had worn it a week ago - perhaps because Powers has been wearing it for the entire week, but also possibly for some other reason. (You might also read the sentence to be an emphasis on that Powers being habitually unkempt (I have no idea if this is true or not), but given the lack of any such indication in this passage, this is highly unlikely).