解答:(Ⅰ) f′(x)=?2x+a=,
由f'(x)=0,得-2x2+ax+1=0,该方程的判别式△=a2+8>0,
可知方程-2x2+ax+1=0有两个实数根,又x>0,故取x=,
当x∈(0,)时,f'(x)>0,函数f(x)单调递增;
当x∈(,+∞)时,f'(x)<0,函数f(x)单调递减.
则函数f(x)的单调递增区间是(0,);递减区间是(,+∞).
(Ⅱ)g′(x)=,当x∈(0,1)时,g'(x)>0,函数g(x)单调递增;当x∈(1,e)时,
g'(x)<0,函数g(x)单调递减,知函数g(x)在区间(0,e)上的极大值为g(1)=,
也为该区间上的最大值,于是函数g(x)在区间(0,e]的值域为(0,].
令F(x)=f(x)+,则F′(x)=f′(x)=,
由F'(x)=0,结合(Ⅰ)可知,方程F'(x)=0在(0,∞)上有一个实数根x3,
若x3≥e,则F(x)在(0,e]上单调递增,与在(0,e]内有两个不同的实数根相矛盾,不合题意,可知F'(x)=0在(0,e]有唯一的解x3=,
且F(x)在(0,)上单调递增;在(,+∞)上单调递减.
因为?x0∈(0,e],方程f(x)+=g(x0)在(0,e]内有两个不同的实数根,所以F(e)≤0,且F(x)max>.
由F(e)≤0,即lne?e2+ae+≤0,解得a≤.
由F(x)max=f(x3)+>,即f(x3)>0,lnx3?+ax3>0,
因为?2+ax3+1=0,所以a=2x3?,代入lnx3?+ax3>0,得lnx3+?1>0,
令h(x)=lnx+x2-1,∴h′(x)=+2x在(0,e]上恒正,∴h(x)=lnx+x2-1在(0,e]上递增,
∵h(1)=0,∴h(x3)>h(1)=0,∴1<x3<e,∵a=2x3?单调递增,∴1<a<2e?,
综上,实数a的取值范围是(1,]