Fatti:
A. Mediante decisione del 30 gennaio 2007, sostanzialmente confermata il 26 giugno seguente anche in seguito all'opposizione dell'interessato, la Sezione del lavoro del Cantone Ticino ha sospeso per la durata di 31 giorni il diritto all'indennità di disoccupazione di S._, nato nel 1968, dal 1° novembre 2005 alla ricerca di un'attività a tempo pieno quale aiuto-giardiniere, operaio di fabbrica o viticoltore, per avere rifiutato, senza valido motivo, un'occupazione adeguata assegnatagli dall'Ufficio regionale di collocamento (URC) presso la ditta I._ SA.
B. Patrocinato dall'avv. Mattia Guerra, S._ si è aggravato al Tribunale delle assicurazioni del Cantone Ticino, contestando la conformità dell'occupazione offerta con il suo stato di salute e chiedendo, in via principale, il rinvio della causa alla Sezione del lavoro per accertamenti medici completivi o, in via subordinata, una riduzione della sospensione inflittagli. Per il resto ha domandato di essere posto al beneficio dell'assistenza giudiziaria gratuita.
Per pronuncia del 7 gennaio 2008, la Corte cantonale ha parzialmente accolto il ricorso riducendo a 22 i giorni di sospensione dal diritto alle indennità di disoccupazione. Il primo giudice, che ha riconosciuto un importo di fr. 1'000.- a titolo di ripetibili parziali, ha inoltre accolto la domanda dell'interessato volta ad ottenere la concessione del gratuito patrocinio nella misura in cui non era divenuta priva di oggetto.
C. La Sezione del lavoro interpone un ricorso in materia di diritto pubblico al Tribunale federale, al quale, in accoglimento del gravame, chiede l'annullamento del giudizio cantonale.
Sempre assistito dall'avv. Guerra, S._, protestate spese e ripetibili, propone la reiezione del gravame, mentre la Segreteria di Stato dell'economia ha rinunciato a determinarsi.

Diritto:
1. Il ricorso può essere presentato per violazione del diritto, conformemente a quanto stabilito dagli art. 95 e 96 LTF. Per il resto, il Tribunale federale fonda la sua sentenza sui fatti accertati dall'autorità inferiore (<ref-law>). Può scostarsi da questo accertamento solo qualora esso sia avvenuto in modo manifestamente inesatto o in violazione del diritto ai sensi dell'<ref-law> (<ref-law>).
2. Oggetto del contendere è la questione di sapere se a ragione il primo giudice abbia, in considerazione delle circostanze del caso, ridotto la sospensione del diritto all'indennità di disoccupazione di S._ da 31 giorni, come stabilito dall'amministrazione, a 22 giorni, ravvisando nel comportamento dell'assicurato un caso di colpa mediamente grave anziché grave. Per la giurisprudenza, la valutazione della colpa come leggera, di una certa gravità e grave è una questione di diritto, per la quale il Tribunale federale fruisce di libero potere di esame.
3. Nei considerandi dell'impugnata pronuncia, cui si rinvia, l'autorità giudiziaria cantonale ha già diffusamente esposto le norme e i principi disciplinanti la materia in esame, rammentando in particolare che l'assicurato, pena la sospensione, per un massimo di 60 giorni, dal diritto all'indennità (art. 30 cpv. 1 lett. d e cpv. 3 LADI; <ref-law>), è tenuto ad accettare l'occupazione adeguata propostagli (art. 17 cpv. 3 in relazione con l'<ref-law>). Giova inoltre ribadire che la colpa è in particolare ritenuta grave se l'assicurato ha abbandonato senza valido motivo un impiego idoneo senza garanzia di uno nuovo o ha rifiutato un lavoro idoneo (<ref-law>).
4. Rilevando in sostanza come l'assicurato avesse rifiutato un'occupazione confacente al suo stato di salute e anche per il resto adeguata, il giudice cantonale ha concluso che giustamente la Sezione del lavoro aveva sospeso il diritto all'indennità di disoccupazione dell'interessato sulla base dell'art. 30 cpv. 1 lett. d LADI. Riguardo all'entità della sanzione, vista da una parte l'effettiva presenza di taluni problemi di salute, che avevano indotto l'amministrazione a chiarire la questione attraverso un medico di fiducia, dato, dall'altra, che l'assicurato aveva dimostrato una certa disponibilità ad ottenere il posto di lavoro assegnatogli dall'URC, sottoponendosi, dal 15 al 22 settembre 2006, ad un test d'idoneità professionale, la Corte cantonale ha tuttavia ritenuto che, tutto ben considerato, la sanzione doveva essere ridotta a 22 giorni.
Nel suo ricorso, la Sezione del lavoro contesta questo ragionamento e fa notare che se la situazione valetudinaria dell'assicurato ha dovuto essere chiarita con il medico di fiducia, simili accertamenti si sarebbero resi necessari in ragione dell'insistenza dell'interessato nel sostenere, a torto, di non essere in grado di svolgere l'impiego assegnatogli presso la ditta I._ SA per motivi di salute. Questi motivi sarebbero del resto stati addotti in un secondo tempo, dopo che all'assicurato era stata trasmessa, per conoscenza, la comunicazione dell'URC relativa a una sanzione. D'altra parte, il fatto che l'assicurato si sia sottoposto ad un test d'idoneità professionale non sarebbe in sé sufficiente per giustificare una riduzione della sospensione, considerato come, in definitiva, determinante sia la volontà di un assicurato di accettare l'impiego che gli viene proposto al termine del test. Se, da un lato, il potenziale datore di lavoro era in concreto intenzionato ad assumere l'opponente, quest'ultimo, dall'altro, non aveva nessun desiderio di accettare la proposta, adducendo ingiustificati motivi attinenti alla retribuzione e, in un secondo tempo, allo stato di salute.
5. Dagli atti di causa risulta che al termine della settimana di test d'idoneità professionale, la ditta I._ SA aveva offerto all'opponente un'opportunità d'impiego quale operaio di fabbrica, offerta che l'interessato, contrariamente a quanto da lui asserito nella risposta al ricorso, ha però rifiutato, secondo quanto emerge dal rapporto finale della ditta, per motivi salariali, ritenendo insufficiente la rimunerazione dell'attività proposta. In virtù di queste dichiarazioni, sulla cui veridicità non vi è motivo di dubitare, l'URC ha sottoposto il caso alla Sezione del lavoro, la quale, esperiti i necessari accertamenti, e preso atto in particolare del parere espresso dal proprio medico di fiducia in merito agli asseriti problemi di salute dell'assicurato, ha ritenuto che l'occupazione assegnata dall'URC fosse adeguata e il rifiuto di S._ ingiustificato. Considerando il comportamento di quest'ultimo gravemente colposo, l'insorgente l'ha sospeso per la durata di 31 giorni, corrispondente al periodo minimo stabilito per i casi di colpa grave (art. 45 cpv. 2 lett. c OADI), dal diritto alle indennità di disoccupazione.
Alla luce del tenore dell'<ref-law>, succitato (consid. 3), la tesi della Sezione ricorrente non può che essere condivisa, vista l'inesistenza di circostanze particolari, suscettibili di giustificare una deroga alla regola sancita dalla citata norma (cfr. DLA 1999 no. 23 pag. 136 e Thomas Nussbaumer, Arbeitslosenversicherung, in Ulrich Meyer [editore], Schweizerisches Bundesverwaltungsrecht, Band XIV, Soziale Sicherheit, 2a ed., Basilea 2007, pag. 2436 cifra marg. 858). È utile ribadire in questo contesto che l'assicurato è tenuto, in ossequio all'obbligo di ridurre il danno, valido anche nell'assicurazione contro la disoccupazione (<ref-ruling> consid. 6b pag. 199; Hans-Ulrich Stauffer, Rechtsprechung des Bundesgerichts zum Sozialversicherungsrecht, Bundesgesetz über die obligatorische Arbeitslosenversicherung und Insolvenzentschädigung, 2a ed., Zurigo 1998, pag. 48), ad accettare l'occupazione adeguata propostagli e a intraprendere tutto quanto si possa ragionevolmente pretendere per evitare o abbreviare la disoccupazione. Quest'obbligo è stato manifestamente disatteso nell'evenienza concreta.
6. Visto quanto precede, il ricorso in materia di diritto pubblico dev'essere accolto. Di conseguenza, va annullato il giudizio cantonale e va confermata la decisione su opposizione del 26 giugno 2007 della Sezione ricorrente.
Pur essendo la procedura di per sé onerosa, viste le circostanze, si prescinde dal prelevare spese giudiziarie (<ref-law>). Non si assegnano ripetibili (<ref-law>).

Per questi motivi, il Tribunale federale pronuncia:
1. Il ricorso è accolto e il giudizio del Tribunale delle assicurazioni del Cantone Ticino del 7 gennaio 2008 è annullato.
2. Non si prelevano spese giudiziarie né si assegnano ripetibili.
3. La causa viene rinviata al Tribunale delle assicurazioni del Cantone Ticino perché, se del caso, si pronunci nuovamente sull'assistenza giudiziaria.
4. Comunicazione alle parti, al Tribunale delle assicurazioni del Cantone Ticino e alla Segreteria di Stato dell'economia.