I assume this means that I need a servo limited to 90 degrees of rotation, but please correct me if I'm wrong.
You just need a servo that can turn at least 90°. You can limit its travel in software.
Also, some of the other sensors we are using will most likely be run from a Renesas rx62n microcontroller. Would it be possible to run the servo from the controller as well? If so, how might it be done? Also, how could we get it to reverse rotation once it hits each maximum. Any help is appreciated!
Yes, it can be run from a single I/O line.
You control a (hobby-) servo by a pulse each 20ms (quite some tolerance allowed). The pulse duration determines the position of the servo and the (seldomly adhered to) standard is 1ms to 2ms, with 1.5ms being the center value (they can be from 0.3ms to 2.8ms in some types, but the 1.5ms center position is usually adhered to).
To move it, you change the pulse duration in the 20ms loop in whatever increment you need and to limit the travel to +/-45°, you just find the durations that gives the needed end points and then keep the values within that range - that way you can use any servo that satisfies the minimum 90° travel (i.e. most) and can focus on either price, strength or whatever else you may find important.
Perhaps it helps with a drawing...Here's a page
that shows a rather common servo, with a 0.6ms to 2.4ms timing and the associated angular positions.