I have always felt this was due to Riemann himself: especially in: Theory of Abelian Functions, 1857. Of course the association of a Riemann surface to an algebraic curve is generally attributed to him, and there he also proves conversely there is a plane curve associated to a (compact) Riemann surface.

He proves there too the Riemann part of the Riemann Roch theorem both for a Riemann surface, and explains how to prove it algebraically for a plane curve. The Roch part, provided later, is merely the addition of the residue theorem to the Riemann theorem, to compute a period integral as a residue evaluation.

There are excellent translations of Riemann's works in a volume by Kendrick Press.

http://www.kendrickpress.com/Riemann.htm

for my account of Riemann's proof of his theorem, see pages 21-34 of:

http://www.math.uga.edu/%7Eroy/rrt.pdf

Let me clarify my use of the word "prove" in regard to Riemann's work. It is apparently true he made unjustified use of the Dirichlet principle in his argument that a compact Riemann surface has on it non zero entire differential forms and non constant meromorphic functions, and hence in his proof of the Riemann theorem for Riemann surfaces. However he explains how to simply write down such objects for plane curves, which by virtue of their representation allow the use of coordinate functions in this regard.

The purely algebraic work of others, is sometimes pointed to as filling a gap in the rigor of Riemann's arguments for Riemann - Roch, but in the case of curves already assumed to be algebraic, such as those associated to algebraic function fields, Riemann's arguments do not require the Dirichlet principle for the existence theorems, and hence are already completely rigorous. Purely algebraic formulations of Riemann Roch, although unnecessary to render Riemann's arguments rigorous in the case of algebraic function fields over the complex numbers, do however seem important for allowing the theory to be generalized to fields other than the complex numbers.

Briefly, the original Riemann Roch theorem over C, requires existence of g holomorphic differential forms where g is the topological genus, and the existence of meromorphic differentials of second kind associated to each point. Then the Riemann Roch formula for the number of meromorphic functions with given bounds on their poles is deduced from an argument via path integrals which are evaluated by Roch using residues. This original argument is completely rigorous for curves derived from algebraic functions fields over C. (I admit that although Riemann writes down the holomorphic forms on a plane curve, he only states that he could as easily write down the meromorphic ones, but does not do so.)

In the algebraic setting one has the existence of forms and functions essentially by hypothesis, and usually one defines the genus in terms of the space of entire forms, and deduces the Riemann Roch formula by algebraic means, avoiding the use of path integrals. In one approach, a judicious use of duality allows one to exploit just the holomorphic differentials and to deduce the existence of meromorphic differentials of second kind after the fact.

In the analytic case of a compact Riemann surface, in which the existence of either a non zero differential form or a non constant meromorphic function is non trivial, purely algebraic arguments do nothing to shore up the situation. So I feel the actual gaps in Riemann's work are on the analytic side, and were apparently filled in only later by those who supplied the analysis, such as Koebe, Hilbert, and Weyl.