@mgmcderm Thanks for posting the worksheet, that is helpful. A few comments.
Syrup actually solves the symbolic case, but doesn't recognize the solution as valid because it is in an unexpected form, a piecewise. I'll fix that. However, the solution is not particularly useful.
You can pass the dontsolve option to Syrup:-Solve; it then returns a list of two sets: the equations and the solving variables. Those can then be manipulated as you wish.
(eqs,vars) := op(Syrup:-solve(ckt, 'ac', 'dontsolve', 'symbolic'):
solve(eqs, vars) assuming R1 > 0; # example
Passing them directly to Maple's solve procedure, maybe with additional assumptions may be useful. For example, using assuming R1 > 0 removes one of the branches. By using dontsolve you can enter placeholders in component values, then make any desired substitutions after extracting the equations and variables.
Am surprised that using ifelse in the value of the current source worked; Maple generally prefers piecewise, but in this case that returns no solution.
A refactoring of the expression yields results. Change ifelse(v>Vclamp,(v-Vclamp)/Rclamp+ileak,ileak) to the equivalent max(v-VClamp,0)/RClamp + ileak, then passing the symbolic option returns a result (multiple solutions).
Note that using conditionals dependent on circuit values with an ac analysis doesn't necessarily make sense; the ac analysis assumes linearity which may be violated by the conditions.