I'm a bit rusty on de Rham cohomology so excuse my overly long answer which was mostly just to convince myself, but now I feel I might as well leave the details in there. It seems like (for smooth manifolds at least) it follows from the universal coefficient theorem and deRham's theorem as you say.
By deRham's theorem we have an isomorphism \theta : H_{deRham}^k(M) \to H^k(M,\mathbb{R}) (maybe reduced singular cohomology in dimension 0; I don't really recall the details and doubt we really care about dimension 0 anyway). By the universal coefficient theorem we have a surjection
H^k(X,A) \xrightarrow{\tau_A} Hom(H_k(X),A) \to 0
which is natural in A and with kernel Ext(H_{k-1}(X),A).
If I understand your definition of periods right, then to say that the periods of a closed differential form \omega lies in a subgroup A \subset \mathbb{R} is simply to say that the image of [\omega] \in H_{deRham}^k(X) along
H_{deRham}^k(X) \xrightarrow{\theta} H^k(X,\mathbb{R}) \xrightarrow{\tau_\mathbb{R}} Hom(H_k(X),\mathbb{R})
can be expressed as the image of an element \alpha_{[\omega]} \in Hom(H_k(X),A) along the map Hom(H_k(X),A) \to Hom(H_k(X),\mathbb{R}) induced by the inclusion i : A \to \mathbb{R}.
By naturality we have a commutative diagram
H^k(X,A) \xrightarrow{\tau_A} Hom(H_k(X),A) \to 0
H^k(X,\mathbb{R}) \xrightarrow{\tau_\mathbb{R}} Hom(H_k(X),\mathbb{R}) \to 0
where the two rows are supposed to be connected by the morphisms induced by the inclusion i : A \to \mathbb{R}.
By the exactness of the top row we get some c \in H^k(X,A) with \tau_A(c) =\alpha_{[\omega]}, but then by the commutativity of the diagram we get
\tau_\mathbb{R}(i_*c) = i_*(\alpha_{[\omega]}) = \tau_\mathbb{R}(\theta([\omega]))
but \tau_\mathbb{R} is an isomorphism by the universal coefficient theorem (Ext(H_{k-1}(X),\mathbb{R})=0 because \mathbb{R} is a field) so
\theta([\omega]) = i_*c
This in particular shows that \omega determines a cohomology class with coefficients in the subgroup A.
The second statement follows similarily by the commutativity of the diagram above because if we start with c \in H^k(X,A), we then get i_*c \in H^k(X,\mathbb{R}) which is represented by some closed differential form \omega. However
\tau_\mathbb{R}(i_*c) = i_*(\tau_A(c))
so the periods of i_*c = \theta([\omega]) lie in A.