Precise definition of a scheme (Key question: How to define an open subfunctor without resorting to classical scheme theory) Speculation and background
Let $\mathcal{C}:=\mathrm{CRing}^\text{op}_\text{Zariski}$, the affine Zariski site.  Consider the category of sheaves, $\operatorname{Sh}(\mathcal{C})$.
According to nLab, schemes are those sheaves that "have a cover by Zariski-open immersions of affine schemes in the category of presheaves over Aff."
In SGA 4.1.ii.5 Grothendieck defines a further topology on $\operatorname{Sh}(\mathcal{C})$ using a "familles couvrantes", which are families of morphisms $\{U_i \to X\}$ such that the induced map $\coprod U_i \to X$ is an epimorphism.  Further, he gives another definition.  A family of morphisms $\{U_i \to X\}$ is called "bicouvrante" if it is a "famille couvrante" and the map $\coprod U_i \to \coprod U_i \times_X \coprod U_i$ is an epimorphism. [Note: This is given for a general category of sheaves on a site, not sheaves on our affine Zariski site.]
Speculation: I assume that the nLab definition means that we have a (bi)covering family of open immersions of representables, but as it stands, we do not have a sufficiently good definition of an open immersion, or equivalently, open subfunctor.
It seems like the notion of a bicovering family is very important, because this is precisely the condition we require on algebraic spaces (if we replace our covering morphisms with etale surjective morphisms in a smart way and require that our cover be comprised of representables).
Questions
What does "open immersion" mean precisely in categorical langauge?  How do we define a scheme precisely in our language of sheaves and grothendieck topologies?  Preferably, this answer should not depend on our base site.  The notion of an open immersion should be a notion that we have in any category of sheaves on any site.
Eisenbud and Harris fail to answer this question for the following reason: they rely on classical scheme theory for their definition of an open subfunctor (same thing as an open immersion).  If we wish to construct our theory of schemes with no logical prerequisites, this is circular.
Once we have this definition, do we require our covering family of open immersions to be a "covering family" or a "bicovering family"?
Further, how can we exhibit, in precise functor of points language, the definition of an algebraic space?
This last question should be a natural consequence of the previous questions provided they are answered in sufficient generality.
 A: Check out the paper of Kontsevich-Rosenberg noncommutative space., they defined formally open immersion and open immersion completely functorial way. This definition is nothing to do with "noncommutative" 
Definition:
Formally open immersion is formally smooth monomorphism.
But one thing need to point out, they are working on Q-category which is a generalization of Grothendieck topologies(destination is dealing with topology without base change property).But just disregard this notion and work in usual grothendieck topology as you want
A: I'm having a little trouble teasing out exactly what your question is, so I'll just write some things about sheaves that seem related and hope they are helpful.
Suppose $C$ is a site.  Let $\hat{C}$ be its category of presheaves and $\tilde{C}$ its category of sheaves.  The topology defined in SGA 4, II.5 is on $\hat{C}$, not on $\tilde{C}$ as you suggest in your question.  Its purpose is to give a topology on $\hat{C}$ such that the category of sheaves on $\hat{C}$ (that is, contravariant functors satisfying descent on the category of contravariant functors on $C$) should coincide with the category of sheaves on $C$ (i.e., $\tilde{\hat{C}} = \tilde{C}$).
You've got the condition for being bicovering backwards: a map of presheaves $H \rightarrow G$ is called bicovering if it is covering (with respect to the topology on $C$) and its diagonal $H \rightarrow H \times_G H$ is also covering.  (What it means for a map of sheaves to be covering is that for any map $X \rightarrow G$ with $X$ representable, the sieve of $X$ induced by $H \times_G X$ should be covering.)
A Grothendieck topology on $C$ is described by asking certain subfunctors (sieves) of objects of $C$ to be covering.  If $H$ is a subfunctor of $G$ then the relative diagonal map is automatically an epimorphism since it is an isomorphism (by definition).  The covering sieves of $X$ are the subfunctors of $X$ that become isomorphic to $X$ upon passing to associated sheaves.
The bicovering business arises when one wants to study which arbitrary morphisms of presheaves (not just inclusions) become isomorphisms upon passing to associated sheaves.  The notion of a covering morphism of presheaves explains which morphisms become surjections of sheaves.  The question then remains: which morphisms become injections?  A map of sheaves is an injection if and only if its relative diagonal is a surjection, so the condition is that the relative diagonal be a covering map.
A: $\newcommand\Aff{\mathrm{Aff}}\DeclareMathOperator\Spec{Spec}\DeclareMathOperator\Hom{Hom}\newcommand\Sh{\mathrm{Sh}}$A morphism of sheaves $f: X \to Y$ in the fpqc topology on $\Aff$ [covers are finite universally epimorphic families $(\Spec(R_i)\to \Spec(R))_i$ in $\Aff$ with each morphism $\Spec(R_i)\to \Spec(R)$ flat] is representable by open immersions of schemes if and only if:

*

*for all local schemes $\Spec(R)$ with closed point $\Spec(k)$ (in the category $\Sh/Y$) the natural map $\Hom_Y(\Spec(R), X) \to \Hom_Y(\Spec(k), X)$ is bijection [or with condition 3) below, just surjective].


*it is locally finitely presented (in the presheaf theoretical sense).


*it is a monomorphism.
Notes: a) Conditions 1) and 2) only are equivalent to the map being representable by "local isomorphisms of schemes" for example the map $X \to \mathbf{A}^1$ where $X$ is the affine line with the original double and the map just folds in the double point. However, these maps are 'no good' (i.e. they do not satisfy fpqc descent).
b) A scheme is a sheaf $X$ in the fpqc topology on $\Aff$ such that there exists a cover (in the canonical topology on $\Sh$) by affine schemes $(\Spec(R_i)\to X)_i$ with each map $\Spec(R_i)\to X$ satisfying the conditions above.
c) I haven't checked but I'm pretty sure this will work with the other natural topologies (fppf, étale, Zariski).
A: I'm not sure if this will satisfy you, but a map of schemes is an open immersion if and only if it is an etale monomorphism. Etale means, by definition, formally etale and locally of finite presentation, both of which conditions have simple formulations in terms of functors of points, from Rings to Sets. Likewise, a map of schemes is a monomorphism if and only if the map of underlying functors is a monomorphism.
A: I'm not sure if this is what you are after, but when I started to look at Grothendieck-topologies I thought of being an open immersion as a topological property; somehow it should be possible to recover all open immersions from the topology, and if we changed the topology to the etalé site, the same method should give us the etalé maps as "open immersions". 
Unfortunately, I doubt this is possible (it would be kind of nice if it were, so please correct me if I'm wrong). The reason why I was fooled to try, was probably due to the topological flavour of the term open immersion. But passing to the Grothendieck topology loses information about our model covering maps we started with. For instance, if {U_i -> U} is a covering, then a sheaf F would satisfy the sheaf condition also for the set {U_i -> U} U {A -> U}, the latter being an arbitrary morphism.
Instead I think it is more correct to think of the property of being an open immersion as something that we know what it is in our base category (affine schemes) and want to generalise to our new, larger category.
That said, we must look for the correct definition of open immersion in our base category. We want it to be something that is the "complement" of a closed immersion. Let F be a subfunctor of spec A. Pulling it back along  spec A/I -> spec A  should give us the zero scheme. Now define the complement of spec A/I as the most general subfunctor F of spec A satisfying this (i.e take the categorical limit). I've not done the details, but I suspect this gives the right concept and that a concrete description of what the subfunctor looks like would be as in exercise VI.6 in E-H. Extending it to representable morphisms of sheaves (in any reasonable topology) is now straight forward using pull-backs.
A: $\newcommand\Ring{\mathrm{Ring}}\DeclareMathOperator\Hom{Hom}\DeclareMathOperator\Spec{Spec}$Here is how you can define the notion of an Zarsiski-open subfunctor starting only with the Zariski topos $\mathcal Z$ of sheaves on $\Ring^\text{op}$ and its canonical internal ring object $\mathbb A$. The input data is $(\mathcal Z,\mathbb A)$, and nothing more.
In fact, allow me to describe a process which produces from any Grothendieck-topos $\mathcal E$ together with an internal (commutative) ring object $R$ in $\mathcal E$ a category of "schemes", such that when you plug $(\mathcal Z,\mathbb A)$ into it, it gives you the actual category of schemes. I will assume that the pair $(\mathcal E,R)$ satisfies a minimal amount of the axioms of synthetic differential geometry. In particular I will assume that $R$ is an internal field in the sense that the following is true. $$\mathcal E\models
\forall x:R. \, \neg (x=0)\to \exists y:R. x y=1$$
And I will assume that $0\neq 1$ in $R$. Both of these conditions are satisfied in the algebraic model $(\mathcal Z,\mathbb A$). As you can see, I use categorical logic.
Step 1. Single out the affine spaces: The internal ring object structure of $R$ gives each hom-set $\Hom_\mathcal E(X,R)$ the structure of a ring which we denote by $\mathcal O(X)$. Pulling back functions preserves the ring structure, and so we get a contravariant functor $\mathcal O:\mathcal E\to \Ring$. We say that an object $X$ in $\mathcal E$ is affine if and only if for every other object $Y$ it holds that $$\Hom_\mathcal E(Y,X)\to \Hom_{\Ring}(\mathcal OX,\mathcal OY)$$
is a bijection. In other words a morphism into $X$ is determined by and can be defined through how it pulls back the functions on $X$. This is a definition which doesn't make much sense for the standard models of SDG (because there $\mathcal O(X)$ has actually the structure of a $C^\infty$-ring), but in the case $(\mathcal Z,\mathbb A)$ it gives us precisely the representables inside $\mathcal Z$.
Step 2. Define the Zariski open subobjects of affine spaces. Fix an affine space $X$. For each function $f:X\to R$, let us declare the subobject $$D(f)=\{x:X|\neg f(x) = 0\}$$ of $X$ to be open. They are the basic open subobjects. Since we like the open subobjects of $X$ to form a lattice, let us also declare arbitrary joins (defined through colimits in $\mathcal E$) of such $D(f)$ to be open in $X$. Now we know what the open subspaces of affine spaces are.
Lemma to step 2. If $X$ is an affine space, then the poset of open subobjects of $X$ has not only arbitrary joins, but also finite meets. Furthermore, the join and meet operations in the lattice of opens agree with those of the surrounding category.
Proof. Let us check that the intersection $D(f)\wedge D(g)$ is $D(fg)$, where the multiplication of $f$ and $g$ is defined by postcomposition with the ring-structure multiplication map of $R$. The other statements follows automatically. To make this work, we actually need that $R$ is a field from the internal perspective. Because of that $D(f) = \{x:X|\, \ulcorner f(x)\text{ is invertible}\urcorner\}$ and since a product of elements in a ring is invertible if and only if both components are (and the proof of that algebra fact is intuitionistically valid), we see that indeed $D(f)\wedge D(g) = D(fg)$. $\square$
Remark. This is a definition which uses categorical logic. You can translate it into a categorical definition (which involves an equalizer) via the semantic described in Jacobs book, or in the case of a sheaf topos you can use the forcing semantic described in Palmgren - Constructive sheaf semantics to translate it in a concrete situation. What you will find out (after translation) is that in the case $(\mathcal Z,\mathbb A)$ and for an affine scheme $\Spec A$ the subobject $D(f)$ is precisely $\Spec A[1/f]\to \Spec A$. If $I$ is an ideal in $A$ and you form the join $\bigvee_{f\in I} D(f)$ in $\mathcal Z$, then you will see that the resulting subobject is precisely the subobject $D(I)$ associated to $I$ as it is described in Demazure & Gabriel's book.
Step 3. Define a topology on arbitrary objects. Given any object $Y$ in $\mathcal Z$, we equip it with the strongest topology such that all maps from affine spaces into $Y$ stay continuous. This means that a subobject $U$ is open in $Y$ if and only if for every affine space $X$ and every morphism $\phi:X\to Y$ the preimage $\phi^{-1}U$ (defined through a pullback) is open in $X$.
Lemma to step 3. We need of course check that the new definition doesn't introduce any new open subobjects on affine spaces. It does not.
Proof. Assume $U$ is a subobject of an affine space $X$ such that the pullback to every other affine space is open. Then in particular $id_X^{-1}U = U$ is open in $X$, and we see that $U$ is already open in $X$. Conversely take any st-indexed join $\bigvee_iD(f_i)$ of basic open subobjects $D(f_i)$ in $X$, and let $\phi:Y\to X$ be a test map from an affine space. Then $$\phi^{-1}(\bigvee_iD(f_i)) = \bigvee_i \phi^{-1}D(f_i)= \bigvee_i D(f_i\circ \phi) $$
for categorical reasons, and we see that the pullback is open in $Y$. $\square$
Final step. Define the category of schemes. A scheme is an object $X$ which can be covered by some collection of affine open subobjects $U_i$. Here covered means that $\bigvee_iU_i=X$. Alternatively the induced map $\sqcup_i U_i \to X$ is an epimorphism in $\mathcal E$.
If you apply that process to the stating data $(\mathcal Z, \mathbb A)$, then you get the category of schemes. Crucially you need not know what the representables are or what the defining site of $\mathcal Z$ is, you only need the internal line $\mathbb A$.
Edit. Here are some texts which explain the translation of internal statements in categorical logic to external meaningful statements.

*

*The link above is the paper Constructive Sheaf Semantics by Erik Palmgreen. It has a nice list of translation rules on the fourth page, and I always use it in praxis.


*There are two texts by Andrew Pitts which are really beginner friendly, concise and clear. They are called Categorical Logic and Notes on Categorical Logic and can be found online.


*The ultimate reference is the first half of Bart Jacobs' book Categorical Logic and Type Theory.
I think this should be enough, but if this post happend to get you interested in categorical logic, feel free to text me. I have collected a huge number of lecture notes and books, which I am happy to share. :)
Even though the forcing semantic of categorical logic is site dependent, the standard semantic (as explained e.g. in Jacobs' book) is not. It depends only on the category and its limits and colimits. The external statement one gets through the forcing semantic is always equivalent to the translation one gets through the categorical semantic, even though they might look different. In that sense the forcing semantic is a useful tool, when a defining site is available, but the justification for categorical logic comes from the categorical semantic. I am just adding this so that no one thinks that I am sneaking in a site-dependency through the forcing semantic!
