You must be able to do this using CSS.
Almost all of the Visualforce tags possess an attribute called styleClass, which is the name of a CSS class to use, i.e.:
<apex:inputText styleClass="myClass" ... />
Converts:
<input type="text" class="myClass" ... />
So working on this you can then define the width using CSS at the top of the page. Here is a full example for a page using the standard Contact controller (no nice formatting though!):
<apex:page standardController="Contact">
<style type="text/css">
.myClass { width: 400px; }
</style>
<apex:form >
<apex:outputLabel for="firstName" value="First Name"/>
<apex:inputText styleClass="myClass" id="firstName" value="{!Contact.FirstName}"/>
</apex:form>
</apex:page>
This works for <apex:inputField> as well, though be wary of what may happen with different field types. To be more specific with the css (CSS 3 only!) you could do this:
input[type="text"].myClass = { width: 400px; }